summaryrefslogtreecommitdiff
path: root/multimedia
diff options
context:
space:
mode:
Diffstat (limited to 'multimedia')
-rw-r--r--multimedia/ab-av1/Makefile3
-rw-r--r--multimedia/ab-av1/Makefile.crates170
-rw-r--r--multimedia/ab-av1/distinfo346
-rw-r--r--multimedia/av1an/Makefile15
-rw-r--r--multimedia/av1an/Makefile.crates407
-rw-r--r--multimedia/av1an/distinfo816
-rw-r--r--multimedia/av1an/files/patch-ffmpeg40
-rw-r--r--multimedia/av1an/files/patch-ffmpeg7-unsigned-char55
-rw-r--r--multimedia/avidemux-plugins/Makefile6
-rw-r--r--multimedia/avidemux/Makefile2
-rw-r--r--multimedia/avidemux/distinfo4
-rw-r--r--multimedia/butt/Makefile2
-rw-r--r--multimedia/emby-server/Makefile2
-rw-r--r--multimedia/ffmpeg/Makefile2
-rw-r--r--multimedia/ffmpeg4/Makefile2
-rw-r--r--multimedia/gstreamer1-plugins-x265/Makefile2
-rw-r--r--multimedia/jellyfin/Makefile2
-rw-r--r--multimedia/jellyfin/distinfo14
-rw-r--r--multimedia/jellyfin/pkg-plist26
-rw-r--r--multimedia/libopenshot/Makefile2
-rw-r--r--multimedia/libopenshot/files/patch-src_FFmpegWriter.cpp18
-rw-r--r--multimedia/libxine/Makefile3
-rw-r--r--multimedia/libxine/files/ffmpeg8-1.patch114
-rw-r--r--multimedia/libxine/files/ffmpeg8-2.patch20
-rw-r--r--multimedia/lms/Makefile2
-rw-r--r--multimedia/lms/distinfo6
-rw-r--r--multimedia/lms/pkg-plist2
-rw-r--r--multimedia/mediaelch/Makefile1
-rw-r--r--multimedia/mediaelch/distinfo4
-rw-r--r--multimedia/mediamtx/Makefile7
-rw-r--r--multimedia/mediamtx/distinfo14
-rw-r--r--multimedia/mplayer/files/patch-ffmpeg-8219
-rw-r--r--multimedia/musique/Makefile23
-rw-r--r--multimedia/musique/distinfo28
-rw-r--r--multimedia/musique/files/patch-src_coverutils.cpp4
-rw-r--r--multimedia/musique/files/patch-src_mainwindow.cpp18
-rw-r--r--multimedia/obs-studio/Makefile1
-rw-r--r--multimedia/py-mat2/Makefile3
-rw-r--r--multimedia/py-mat2/distinfo6
-rw-r--r--multimedia/subtitlecomposer/files/patch-CMakeLists.txt19
-rw-r--r--multimedia/subtitlecomposer/files/patch-src_CMakeLists.txt6
-rw-r--r--multimedia/vlc/Makefile5
-rw-r--r--multimedia/vlc/files/vlc-3.0.21-fedora_ffmpeg7-1.patch1139
-rw-r--r--multimedia/vlc/files/vlc-3.0.21-ffmpeg8-1.patch393
-rw-r--r--multimedia/vvdec/Makefile4
-rw-r--r--multimedia/vvdec/distinfo6
-rw-r--r--multimedia/vvdec/pkg-plist2
-rw-r--r--multimedia/x265/Makefile90
-rw-r--r--multimedia/x265/distinfo6
-rw-r--r--multimedia/x265/files/patch-arm-assembly9
-rw-r--r--multimedia/x265/files/patch-warnings23
-rw-r--r--multimedia/x265/pkg-plist2
-rw-r--r--multimedia/youtui/Makefile7
-rw-r--r--multimedia/youtui/distinfo14
54 files changed, 2989 insertions, 1147 deletions
diff --git a/multimedia/ab-av1/Makefile b/multimedia/ab-av1/Makefile
index 19b3de30f2f4..eef9afb02d15 100644
--- a/multimedia/ab-av1/Makefile
+++ b/multimedia/ab-av1/Makefile
@@ -1,7 +1,6 @@
PORTNAME= ab-av1
DISTVERSIONPREFIX= v
-DISTVERSION= 0.10.1
-PORTREVISION= 5
+DISTVERSION= 0.10.2
CATEGORIES= multimedia
MAINTAINER= jbeich@FreeBSD.org
diff --git a/multimedia/ab-av1/Makefile.crates b/multimedia/ab-av1/Makefile.crates
index a8e2fe1e48fa..9b42298ae22a 100644
--- a/multimedia/ab-av1/Makefile.crates
+++ b/multimedia/ab-av1/Makefile.crates
@@ -1,46 +1,43 @@
-CARGO_CRATES= addr2line-0.24.2 \
- adler2-2.0.0 \
- anstream-0.6.18 \
- anstyle-1.0.10 \
- anstyle-parse-0.2.6 \
- anstyle-query-1.1.2 \
- anstyle-wincon-3.0.7 \
- anyhow-1.0.98 \
+CARGO_CRATES= anstream-0.6.21 \
+ anstyle-1.0.13 \
+ anstyle-parse-0.2.7 \
+ anstyle-query-1.1.5 \
+ anstyle-wincon-3.0.11 \
+ anyhow-1.0.100 \
arrayref-0.3.9 \
arrayvec-0.7.6 \
async-stream-0.3.6 \
async-stream-impl-0.3.6 \
- autocfg-1.4.0 \
- backtrace-0.3.75 \
bitflags-1.3.2 \
- bitflags-2.9.1 \
+ bitflags-2.10.0 \
blake3-1.8.2 \
- bumpalo-3.17.0 \
+ bumpalo-3.19.0 \
byteorder-1.5.0 \
- bytes-1.10.1 \
- cc-1.2.23 \
- cfg-if-1.0.0 \
- clap-4.5.38 \
- clap-verbosity-flag-3.0.2 \
- clap_builder-4.5.38 \
- clap_complete-4.5.50 \
- clap_derive-4.5.32 \
- clap_lex-0.7.4 \
- colorchoice-1.0.3 \
- console-0.15.11 \
+ bytes-1.11.0 \
+ cc-1.2.47 \
+ cfg-if-1.0.4 \
+ clap-4.5.53 \
+ clap-verbosity-flag-3.0.4 \
+ clap_builder-4.5.53 \
+ clap_complete-4.5.61 \
+ clap_derive-4.5.49 \
+ clap_lex-0.7.6 \
+ colorchoice-1.0.4 \
+ console-0.16.1 \
constant_time_eq-0.3.1 \
- crc32fast-1.4.2 \
+ crc32fast-1.5.0 \
crossbeam-epoch-0.9.18 \
crossbeam-utils-0.8.21 \
- deranged-0.4.0 \
+ deranged-0.5.5 \
dirs-6.0.0 \
dirs-sys-0.5.0 \
encode_unicode-1.0.0 \
- env_filter-0.1.3 \
+ env_filter-0.1.4 \
env_logger-0.11.8 \
- errno-0.3.12 \
+ errno-0.3.14 \
fastrand-2.3.0 \
ffprobe-0.4.0 \
+ find-msvc-tools-0.1.5 \
fs2-0.4.3 \
futures-0.3.31 \
futures-channel-0.3.31 \
@@ -53,88 +50,89 @@ CARGO_CRATES= addr2line-0.24.2 \
futures-util-0.3.31 \
fxhash-0.2.1 \
getrandom-0.2.16 \
- gimli-0.31.1 \
heck-0.5.0 \
- humantime-2.2.0 \
- indicatif-0.17.11 \
+ humantime-2.3.0 \
+ indicatif-0.18.3 \
infer-0.19.0 \
instant-0.1.13 \
- is_terminal_polyfill-1.70.1 \
+ is_terminal_polyfill-1.70.2 \
itoa-1.0.15 \
- jiff-0.2.13 \
- jiff-static-0.2.13 \
- js-sys-0.3.77 \
- libc-0.2.172 \
- libredox-0.1.3 \
- linux-raw-sys-0.9.4 \
- lock_api-0.4.12 \
- log-0.4.27 \
- memchr-2.7.4 \
- miniz_oxide-0.8.8 \
- mio-1.0.3 \
+ jiff-0.2.16 \
+ jiff-static-0.2.16 \
+ js-sys-0.3.82 \
+ libc-0.2.177 \
+ libredox-0.1.10 \
+ linux-raw-sys-0.11.0 \
+ lock_api-0.4.14 \
+ log-0.4.28 \
+ memchr-2.7.6 \
+ mio-1.1.0 \
num-conv-0.1.0 \
- number_prefix-0.4.0 \
- object-0.36.7 \
once_cell-1.21.3 \
+ once_cell_polyfill-1.70.2 \
option-ext-0.2.0 \
parking_lot-0.11.2 \
parking_lot_core-0.8.6 \
pin-project-lite-0.2.16 \
pin-utils-0.1.0 \
- portable-atomic-1.11.0 \
+ portable-atomic-1.11.1 \
portable-atomic-util-0.2.4 \
powerfmt-0.2.0 \
- proc-macro2-1.0.95 \
- quote-1.0.40 \
+ proc-macro2-1.0.103 \
+ quote-1.0.42 \
redox_syscall-0.2.16 \
- redox_users-0.5.0 \
- rustc-demangle-0.1.24 \
- rustix-1.0.7 \
+ redox_users-0.5.2 \
+ rustix-1.1.2 \
+ rustversion-1.0.22 \
ryu-1.0.20 \
+ same-file-1.0.6 \
scopeguard-1.2.0 \
- serde-1.0.219 \
- serde_derive-1.0.219 \
- serde_json-1.0.140 \
+ serde-1.0.228 \
+ serde_core-1.0.228 \
+ serde_derive-1.0.228 \
+ serde_json-1.0.145 \
shell-escape-0.1.5 \
shlex-1.3.0 \
- signal-hook-registry-1.4.5 \
- slab-0.4.9 \
+ signal-hook-registry-1.4.7 \
+ slab-0.4.11 \
sled-0.34.7 \
- smallvec-1.15.0 \
+ smallvec-1.15.1 \
strsim-0.11.1 \
- syn-2.0.101 \
- terminal_size-0.4.2 \
- thiserror-2.0.12 \
- thiserror-impl-2.0.12 \
- time-0.3.41 \
- time-core-0.1.4 \
- time-macros-0.2.22 \
- tokio-1.45.0 \
- tokio-macros-2.5.0 \
- tokio-process-stream-0.4.0 \
+ syn-2.0.110 \
+ terminal_size-0.4.3 \
+ thiserror-2.0.17 \
+ thiserror-impl-2.0.17 \
+ time-0.3.44 \
+ time-core-0.1.6 \
+ time-macros-0.2.24 \
+ tokio-1.48.0 \
+ tokio-macros-2.6.0 \
+ tokio-process-stream-0.4.1 \
tokio-stream-0.1.17 \
- tokio-util-0.7.15 \
- unicode-ident-1.0.18 \
- unicode-width-0.2.0 \
+ tokio-util-0.7.17 \
+ unicode-ident-1.0.22 \
+ unicode-width-0.2.2 \
+ unit-prefix-0.5.2 \
utf8parse-0.2.2 \
- wasi-0.11.0+wasi-snapshot-preview1 \
- wasm-bindgen-0.2.100 \
- wasm-bindgen-backend-0.2.100 \
- wasm-bindgen-macro-0.2.100 \
- wasm-bindgen-macro-support-0.2.100 \
- wasm-bindgen-shared-0.2.100 \
+ wasi-0.11.1+wasi-snapshot-preview1 \
+ wasm-bindgen-0.2.105 \
+ wasm-bindgen-macro-0.2.105 \
+ wasm-bindgen-macro-support-0.2.105 \
+ wasm-bindgen-shared-0.2.105 \
web-time-1.1.0 \
winapi-0.3.9 \
winapi-i686-pc-windows-gnu-0.4.0 \
+ winapi-util-0.1.11 \
winapi-x86_64-pc-windows-gnu-0.4.0 \
- windows-sys-0.52.0 \
- windows-sys-0.59.0 \
- windows-targets-0.52.6 \
- windows_aarch64_gnullvm-0.52.6 \
- windows_aarch64_msvc-0.52.6 \
- windows_i686_gnu-0.52.6 \
- windows_i686_gnullvm-0.52.6 \
- windows_i686_msvc-0.52.6 \
- windows_x86_64_gnu-0.52.6 \
- windows_x86_64_gnullvm-0.52.6 \
- windows_x86_64_msvc-0.52.6
+ windows-link-0.2.1 \
+ windows-sys-0.60.2 \
+ windows-sys-0.61.2 \
+ windows-targets-0.53.5 \
+ windows_aarch64_gnullvm-0.53.1 \
+ windows_aarch64_msvc-0.53.1 \
+ windows_i686_gnu-0.53.1 \
+ windows_i686_gnullvm-0.53.1 \
+ windows_i686_msvc-0.53.1 \
+ windows_x86_64_gnu-0.53.1 \
+ windows_x86_64_gnullvm-0.53.1 \
+ windows_x86_64_msvc-0.53.1
diff --git a/multimedia/ab-av1/distinfo b/multimedia/ab-av1/distinfo
index 4d354e6a6295..15eb28e8de64 100644
--- a/multimedia/ab-av1/distinfo
+++ b/multimedia/ab-av1/distinfo
@@ -1,20 +1,16 @@
-TIMESTAMP = 1747488858
-SHA256 (rust/crates/addr2line-0.24.2.crate) = dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1
-SIZE (rust/crates/addr2line-0.24.2.crate) = 39015
-SHA256 (rust/crates/adler2-2.0.0.crate) = 512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627
-SIZE (rust/crates/adler2-2.0.0.crate) = 13529
-SHA256 (rust/crates/anstream-0.6.18.crate) = 8acc5369981196006228e28809f761875c0327210a891e941f4c683b3a99529b
-SIZE (rust/crates/anstream-0.6.18.crate) = 29681
-SHA256 (rust/crates/anstyle-1.0.10.crate) = 55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9
-SIZE (rust/crates/anstyle-1.0.10.crate) = 15725
-SHA256 (rust/crates/anstyle-parse-0.2.6.crate) = 3b2d16507662817a6a20a9ea92df6652ee4f94f914589377d69f3b21bc5798a9
-SIZE (rust/crates/anstyle-parse-0.2.6.crate) = 22343
-SHA256 (rust/crates/anstyle-query-1.1.2.crate) = 79947af37f4177cfead1110013d678905c37501914fba0efea834c3fe9a8d60c
-SIZE (rust/crates/anstyle-query-1.1.2.crate) = 9969
-SHA256 (rust/crates/anstyle-wincon-3.0.7.crate) = ca3534e77181a9cc07539ad51f2141fe32f6c3ffd4df76db8ad92346b003ae4e
-SIZE (rust/crates/anstyle-wincon-3.0.7.crate) = 12400
-SHA256 (rust/crates/anyhow-1.0.98.crate) = e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487
-SIZE (rust/crates/anyhow-1.0.98.crate) = 53334
+TIMESTAMP = 1763860278
+SHA256 (rust/crates/anstream-0.6.21.crate) = 43d5b281e737544384e969a5ccad3f1cdd24b48086a0fc1b2a5262a26b8f4f4a
+SIZE (rust/crates/anstream-0.6.21.crate) = 29516
+SHA256 (rust/crates/anstyle-1.0.13.crate) = 5192cca8006f1fd4f7237516f40fa183bb07f8fbdfedaa0036de5ea9b0b45e78
+SIZE (rust/crates/anstyle-1.0.13.crate) = 17651
+SHA256 (rust/crates/anstyle-parse-0.2.7.crate) = 4e7644824f0aa2c7b9384579234ef10eb7efb6a0deb83f9630a49594dd9c15c2
+SIZE (rust/crates/anstyle-parse-0.2.7.crate) = 21707
+SHA256 (rust/crates/anstyle-query-1.1.5.crate) = 40c48f72fd53cd289104fc64099abca73db4166ad86ea0b4341abe65af83dadc
+SIZE (rust/crates/anstyle-query-1.1.5.crate) = 10264
+SHA256 (rust/crates/anstyle-wincon-3.0.11.crate) = 291e6a250ff86cd4a820112fb8898808a366d8f9f58ce16d1f538353ad55747d
+SIZE (rust/crates/anstyle-wincon-3.0.11.crate) = 12638
+SHA256 (rust/crates/anyhow-1.0.100.crate) = a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61
+SIZE (rust/crates/anyhow-1.0.100.crate) = 54059
SHA256 (rust/crates/arrayref-0.3.9.crate) = 76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb
SIZE (rust/crates/arrayref-0.3.9.crate) = 9186
SHA256 (rust/crates/arrayvec-0.7.6.crate) = 7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50
@@ -23,68 +19,66 @@ SHA256 (rust/crates/async-stream-0.3.6.crate) = 0b5a71a6f37880a80d1d7f19efd781e4
SIZE (rust/crates/async-stream-0.3.6.crate) = 13823
SHA256 (rust/crates/async-stream-impl-0.3.6.crate) = c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d
SIZE (rust/crates/async-stream-impl-0.3.6.crate) = 4312
-SHA256 (rust/crates/autocfg-1.4.0.crate) = ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26
-SIZE (rust/crates/autocfg-1.4.0.crate) = 17712
-SHA256 (rust/crates/backtrace-0.3.75.crate) = 6806a6321ec58106fea15becdad98371e28d92ccbc7c8f1b3b6dd724fe8f1002
-SIZE (rust/crates/backtrace-0.3.75.crate) = 92665
SHA256 (rust/crates/bitflags-1.3.2.crate) = bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a
SIZE (rust/crates/bitflags-1.3.2.crate) = 23021
-SHA256 (rust/crates/bitflags-2.9.1.crate) = 1b8e56985ec62d17e9c1001dc89c88ecd7dc08e47eba5ec7c29c7b5eeecde967
-SIZE (rust/crates/bitflags-2.9.1.crate) = 47913
+SHA256 (rust/crates/bitflags-2.10.0.crate) = 812e12b5285cc515a9c72a5c1d3b6d46a19dac5acfef5265968c166106e31dd3
+SIZE (rust/crates/bitflags-2.10.0.crate) = 48427
SHA256 (rust/crates/blake3-1.8.2.crate) = 3888aaa89e4b2a40fca9848e400f6a658a5a3978de7be858e209cafa8be9a4a0
SIZE (rust/crates/blake3-1.8.2.crate) = 205967
-SHA256 (rust/crates/bumpalo-3.17.0.crate) = 1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf
-SIZE (rust/crates/bumpalo-3.17.0.crate) = 91975
+SHA256 (rust/crates/bumpalo-3.19.0.crate) = 46c5e41b57b8bba42a04676d81cb89e9ee8e859a1a66f80a5a72e1cb76b34d43
+SIZE (rust/crates/bumpalo-3.19.0.crate) = 96414
SHA256 (rust/crates/byteorder-1.5.0.crate) = 1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b
SIZE (rust/crates/byteorder-1.5.0.crate) = 23288
-SHA256 (rust/crates/bytes-1.10.1.crate) = d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a
-SIZE (rust/crates/bytes-1.10.1.crate) = 76779
-SHA256 (rust/crates/cc-1.2.23.crate) = 5f4ac86a9e5bc1e2b3449ab9d7d3a6a405e3d1bb28d7b9be8614f55846ae3766
-SIZE (rust/crates/cc-1.2.23.crate) = 106527
-SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd
-SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934
-SHA256 (rust/crates/clap-4.5.38.crate) = ed93b9805f8ba930df42c2590f05453d5ec36cbb85d018868a5b24d31f6ac000
-SIZE (rust/crates/clap-4.5.38.crate) = 57140
-SHA256 (rust/crates/clap-verbosity-flag-3.0.2.crate) = 2678fade3b77aa3a8ff3aae87e9c008d3fb00473a41c71fbf74e91c8c7b37e84
-SIZE (rust/crates/clap-verbosity-flag-3.0.2.crate) = 14866
-SHA256 (rust/crates/clap_builder-4.5.38.crate) = 379026ff283facf611b0ea629334361c4211d1b12ee01024eec1591133b04120
-SIZE (rust/crates/clap_builder-4.5.38.crate) = 169177
-SHA256 (rust/crates/clap_complete-4.5.50.crate) = c91d3baa3bcd889d60e6ef28874126a0b384fd225ab83aa6d8a801c519194ce1
-SIZE (rust/crates/clap_complete-4.5.50.crate) = 48292
-SHA256 (rust/crates/clap_derive-4.5.32.crate) = 09176aae279615badda0765c0c0b3f6ed53f4709118af73cf4655d85d1530cd7
-SIZE (rust/crates/clap_derive-4.5.32.crate) = 33441
-SHA256 (rust/crates/clap_lex-0.7.4.crate) = f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6
-SIZE (rust/crates/clap_lex-0.7.4.crate) = 12858
-SHA256 (rust/crates/colorchoice-1.0.3.crate) = 5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990
-SIZE (rust/crates/colorchoice-1.0.3.crate) = 7923
-SHA256 (rust/crates/console-0.15.11.crate) = 054ccb5b10f9f2cbf51eb355ca1d05c2d279ce1804688d0db74b4733a5aeafd8
-SIZE (rust/crates/console-0.15.11.crate) = 37822
+SHA256 (rust/crates/bytes-1.11.0.crate) = b35204fbdc0b3f4446b89fc1ac2cf84a8a68971995d0bf2e925ec7cd960f9cb3
+SIZE (rust/crates/bytes-1.11.0.crate) = 78391
+SHA256 (rust/crates/cc-1.2.47.crate) = cd405d82c84ff7f35739f175f67d8b9fb7687a0e84ccdc78bd3568839827cf07
+SIZE (rust/crates/cc-1.2.47.crate) = 92422
+SHA256 (rust/crates/cfg-if-1.0.4.crate) = 9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801
+SIZE (rust/crates/cfg-if-1.0.4.crate) = 9360
+SHA256 (rust/crates/clap-4.5.53.crate) = c9e340e012a1bf4935f5282ed1436d1489548e8f72308207ea5df0e23d2d03f8
+SIZE (rust/crates/clap-4.5.53.crate) = 62036
+SHA256 (rust/crates/clap-verbosity-flag-3.0.4.crate) = 9d92b1fab272fe943881b77cc6e920d6543e5b1bfadbd5ed81c7c5a755742394
+SIZE (rust/crates/clap-verbosity-flag-3.0.4.crate) = 16952
+SHA256 (rust/crates/clap_builder-4.5.53.crate) = d76b5d13eaa18c901fd2f7fca939fefe3a0727a953561fefdf3b2922b8569d00
+SIZE (rust/crates/clap_builder-4.5.53.crate) = 170811
+SHA256 (rust/crates/clap_complete-4.5.61.crate) = 39615915e2ece2550c0149addac32fb5bd312c657f43845bb9088cb9c8a7c992
+SIZE (rust/crates/clap_complete-4.5.61.crate) = 48828
+SHA256 (rust/crates/clap_derive-4.5.49.crate) = 2a0b5487afeab2deb2ff4e03a807ad1a03ac532ff5a2cee5d86884440c7f7671
+SIZE (rust/crates/clap_derive-4.5.49.crate) = 33559
+SHA256 (rust/crates/clap_lex-0.7.6.crate) = a1d728cc89cf3aee9ff92b05e62b19ee65a02b5702cff7d5a377e32c6ae29d8d
+SIZE (rust/crates/clap_lex-0.7.6.crate) = 13466
+SHA256 (rust/crates/colorchoice-1.0.4.crate) = b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75
+SIZE (rust/crates/colorchoice-1.0.4.crate) = 8196
+SHA256 (rust/crates/console-0.16.1.crate) = b430743a6eb14e9764d4260d4c0d8123087d504eeb9c48f2b2a5e810dd369df4
+SIZE (rust/crates/console-0.16.1.crate) = 39129
SHA256 (rust/crates/constant_time_eq-0.3.1.crate) = 7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6
SIZE (rust/crates/constant_time_eq-0.3.1.crate) = 11561
-SHA256 (rust/crates/crc32fast-1.4.2.crate) = a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3
-SIZE (rust/crates/crc32fast-1.4.2.crate) = 38491
+SHA256 (rust/crates/crc32fast-1.5.0.crate) = 9481c1c90cbf2ac953f07c8d4a58aa3945c425b7185c9154d67a65e4230da511
+SIZE (rust/crates/crc32fast-1.5.0.crate) = 40723
SHA256 (rust/crates/crossbeam-epoch-0.9.18.crate) = 5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e
SIZE (rust/crates/crossbeam-epoch-0.9.18.crate) = 46875
SHA256 (rust/crates/crossbeam-utils-0.8.21.crate) = d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28
SIZE (rust/crates/crossbeam-utils-0.8.21.crate) = 42691
-SHA256 (rust/crates/deranged-0.4.0.crate) = 9c9e6a11ca8224451684bc0d7d5a7adbf8f2fd6887261a1cfc3c0432f9d4068e
-SIZE (rust/crates/deranged-0.4.0.crate) = 23235
+SHA256 (rust/crates/deranged-0.5.5.crate) = ececcb659e7ba858fb4f10388c250a7252eb0a27373f1a72b8748afdd248e587
+SIZE (rust/crates/deranged-0.5.5.crate) = 24438
SHA256 (rust/crates/dirs-6.0.0.crate) = c3e8aa94d75141228480295a7d0e7feb620b1a5ad9f12bc40be62411e38cce4e
SIZE (rust/crates/dirs-6.0.0.crate) = 14190
SHA256 (rust/crates/dirs-sys-0.5.0.crate) = e01a3366d27ee9890022452ee61b2b63a67e6f13f58900b651ff5665f0bb1fab
SIZE (rust/crates/dirs-sys-0.5.0.crate) = 10157
SHA256 (rust/crates/encode_unicode-1.0.0.crate) = 34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0
SIZE (rust/crates/encode_unicode-1.0.0.crate) = 56986
-SHA256 (rust/crates/env_filter-0.1.3.crate) = 186e05a59d4c50738528153b83b0b0194d3a29507dfec16eccd4b342903397d0
-SIZE (rust/crates/env_filter-0.1.3.crate) = 15191
+SHA256 (rust/crates/env_filter-0.1.4.crate) = 1bf3c259d255ca70051b30e2e95b5446cdb8949ac4cd22c0d7fd634d89f568e2
+SIZE (rust/crates/env_filter-0.1.4.crate) = 15281
SHA256 (rust/crates/env_logger-0.11.8.crate) = 13c863f0904021b108aa8b2f55046443e6b1ebde8fd4a15c399893aae4fa069f
SIZE (rust/crates/env_logger-0.11.8.crate) = 32538
-SHA256 (rust/crates/errno-0.3.12.crate) = cea14ef9355e3beab063703aa9dab15afd25f0667c341310c1e5274bb1d0da18
-SIZE (rust/crates/errno-0.3.12.crate) = 12423
+SHA256 (rust/crates/errno-0.3.14.crate) = 39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb
+SIZE (rust/crates/errno-0.3.14.crate) = 12002
SHA256 (rust/crates/fastrand-2.3.0.crate) = 37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be
SIZE (rust/crates/fastrand-2.3.0.crate) = 15076
SHA256 (rust/crates/ffprobe-0.4.0.crate) = 8ffef835e1f9ac151db5bb2adbb95c9dfe1f315f987f011dd89cd655b4e9a52c
SIZE (rust/crates/ffprobe-0.4.0.crate) = 6171
+SHA256 (rust/crates/find-msvc-tools-0.1.5.crate) = 3a3076410a55c90011c298b04d0cfa770b00fa04e1e3c97d3f6c9de105a03844
+SIZE (rust/crates/find-msvc-tools-0.1.5.crate) = 30942
SHA256 (rust/crates/fs2-0.4.3.crate) = 9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213
SIZE (rust/crates/fs2-0.4.3.crate) = 13138
SHA256 (rust/crates/futures-0.3.31.crate) = 65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876
@@ -109,52 +103,46 @@ SHA256 (rust/crates/fxhash-0.2.1.crate) = c31b6d751ae2c7f11320402d34e41349dd1016
SIZE (rust/crates/fxhash-0.2.1.crate) = 4102
SHA256 (rust/crates/getrandom-0.2.16.crate) = 335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592
SIZE (rust/crates/getrandom-0.2.16.crate) = 40163
-SHA256 (rust/crates/gimli-0.31.1.crate) = 07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f
-SIZE (rust/crates/gimli-0.31.1.crate) = 279515
SHA256 (rust/crates/heck-0.5.0.crate) = 2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea
SIZE (rust/crates/heck-0.5.0.crate) = 11517
-SHA256 (rust/crates/humantime-2.2.0.crate) = 9b112acc8b3adf4b107a8ec20977da0273a8c386765a3ec0229bd500a1443f9f
-SIZE (rust/crates/humantime-2.2.0.crate) = 20646
-SHA256 (rust/crates/indicatif-0.17.11.crate) = 183b3088984b400f4cfac3620d5e076c84da5364016b4f49473de574b2586235
-SIZE (rust/crates/indicatif-0.17.11.crate) = 66577
+SHA256 (rust/crates/humantime-2.3.0.crate) = 135b12329e5e3ce057a9f972339ea52bc954fe1e9358ef27f95e89716fbc5424
+SIZE (rust/crates/humantime-2.3.0.crate) = 23242
+SHA256 (rust/crates/indicatif-0.18.3.crate) = 9375e112e4b463ec1b1c6c011953545c65a30164fbab5b581df32b3abf0dcb88
+SIZE (rust/crates/indicatif-0.18.3.crate) = 66504
SHA256 (rust/crates/infer-0.19.0.crate) = a588916bfdfd92e71cacef98a63d9b1f0d74d6599980d11894290e7ddefffcf7
SIZE (rust/crates/infer-0.19.0.crate) = 19091
SHA256 (rust/crates/instant-0.1.13.crate) = e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222
SIZE (rust/crates/instant-0.1.13.crate) = 6305
-SHA256 (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf
-SIZE (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7492
+SHA256 (rust/crates/is_terminal_polyfill-1.70.2.crate) = a6cb138bb79a146c1bd460005623e142ef0181e3d0219cb493e02f7d08a35695
+SIZE (rust/crates/is_terminal_polyfill-1.70.2.crate) = 7548
SHA256 (rust/crates/itoa-1.0.15.crate) = 4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c
SIZE (rust/crates/itoa-1.0.15.crate) = 11231
-SHA256 (rust/crates/jiff-0.2.13.crate) = f02000660d30638906021176af16b17498bd0d12813dbfe7b276d8bc7f3c0806
-SIZE (rust/crates/jiff-0.2.13.crate) = 707842
-SHA256 (rust/crates/jiff-static-0.2.13.crate) = f3c30758ddd7188629c6713fc45d1188af4f44c90582311d0c8d8c9907f60c48
-SIZE (rust/crates/jiff-static-0.2.13.crate) = 76123
-SHA256 (rust/crates/js-sys-0.3.77.crate) = 1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f
-SIZE (rust/crates/js-sys-0.3.77.crate) = 55538
-SHA256 (rust/crates/libc-0.2.172.crate) = d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa
-SIZE (rust/crates/libc-0.2.172.crate) = 791646
-SHA256 (rust/crates/libredox-0.1.3.crate) = c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d
-SIZE (rust/crates/libredox-0.1.3.crate) = 6068
-SHA256 (rust/crates/linux-raw-sys-0.9.4.crate) = cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12
-SIZE (rust/crates/linux-raw-sys-0.9.4.crate) = 2311088
-SHA256 (rust/crates/lock_api-0.4.12.crate) = 07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17
-SIZE (rust/crates/lock_api-0.4.12.crate) = 27591
-SHA256 (rust/crates/log-0.4.27.crate) = 13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94
-SIZE (rust/crates/log-0.4.27.crate) = 48120
-SHA256 (rust/crates/memchr-2.7.4.crate) = 78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3
-SIZE (rust/crates/memchr-2.7.4.crate) = 96670
-SHA256 (rust/crates/miniz_oxide-0.8.8.crate) = 3be647b768db090acb35d5ec5db2b0e1f1de11133ca123b9eacf5137868f892a
-SIZE (rust/crates/miniz_oxide-0.8.8.crate) = 67065
-SHA256 (rust/crates/mio-1.0.3.crate) = 2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd
-SIZE (rust/crates/mio-1.0.3.crate) = 103703
+SHA256 (rust/crates/jiff-0.2.16.crate) = 49cce2b81f2098e7e3efc35bc2e0a6b7abec9d34128283d7a26fa8f32a6dbb35
+SIZE (rust/crates/jiff-0.2.16.crate) = 731814
+SHA256 (rust/crates/jiff-static-0.2.16.crate) = 980af8b43c3ad5d8d349ace167ec8170839f753a42d233ba19e08afe1850fa69
+SIZE (rust/crates/jiff-static-0.2.16.crate) = 77672
+SHA256 (rust/crates/js-sys-0.3.82.crate) = b011eec8cc36da2aab2d5cff675ec18454fad408585853910a202391cf9f8e65
+SIZE (rust/crates/js-sys-0.3.82.crate) = 56436
+SHA256 (rust/crates/libc-0.2.177.crate) = 2874a2af47a2325c2001a6e6fad9b16a53b802102b528163885171cf92b15976
+SIZE (rust/crates/libc-0.2.177.crate) = 792045
+SHA256 (rust/crates/libredox-0.1.10.crate) = 416f7e718bdb06000964960ffa43b4335ad4012ae8b99060261aa4a8088d5ccb
+SIZE (rust/crates/libredox-0.1.10.crate) = 7332
+SHA256 (rust/crates/linux-raw-sys-0.11.0.crate) = df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039
+SIZE (rust/crates/linux-raw-sys-0.11.0.crate) = 2659624
+SHA256 (rust/crates/lock_api-0.4.14.crate) = 224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965
+SIZE (rust/crates/lock_api-0.4.14.crate) = 29249
+SHA256 (rust/crates/log-0.4.28.crate) = 34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432
+SIZE (rust/crates/log-0.4.28.crate) = 51131
+SHA256 (rust/crates/memchr-2.7.6.crate) = f52b00d39961fc5b2736ea853c9cc86238e165017a493d1d5c8eac6bdc4cc273
+SIZE (rust/crates/memchr-2.7.6.crate) = 97616
+SHA256 (rust/crates/mio-1.1.0.crate) = 69d83b0086dc8ecf3ce9ae2874b2d1290252e2a30720bea58a5c6639b0092873
+SIZE (rust/crates/mio-1.1.0.crate) = 105232
SHA256 (rust/crates/num-conv-0.1.0.crate) = 51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9
SIZE (rust/crates/num-conv-0.1.0.crate) = 7444
-SHA256 (rust/crates/number_prefix-0.4.0.crate) = 830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3
-SIZE (rust/crates/number_prefix-0.4.0.crate) = 6922
-SHA256 (rust/crates/object-0.36.7.crate) = 62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87
-SIZE (rust/crates/object-0.36.7.crate) = 329938
SHA256 (rust/crates/once_cell-1.21.3.crate) = 42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d
SIZE (rust/crates/once_cell-1.21.3.crate) = 34534
+SHA256 (rust/crates/once_cell_polyfill-1.70.2.crate) = 384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe
+SIZE (rust/crates/once_cell_polyfill-1.70.2.crate) = 7448
SHA256 (rust/crates/option-ext-0.2.0.crate) = 04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d
SIZE (rust/crates/option-ext-0.2.0.crate) = 7345
SHA256 (rust/crates/parking_lot-0.11.2.crate) = 7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99
@@ -165,119 +153,127 @@ SHA256 (rust/crates/pin-project-lite-0.2.16.crate) = 3b3cff922bd51709b605d9ead9a
SIZE (rust/crates/pin-project-lite-0.2.16.crate) = 30504
SHA256 (rust/crates/pin-utils-0.1.0.crate) = 8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184
SIZE (rust/crates/pin-utils-0.1.0.crate) = 7580
-SHA256 (rust/crates/portable-atomic-1.11.0.crate) = 350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e
-SIZE (rust/crates/portable-atomic-1.11.0.crate) = 181258
+SHA256 (rust/crates/portable-atomic-1.11.1.crate) = f84267b20a16ea918e43c6a88433c2d54fa145c92a811b5b047ccbe153674483
+SIZE (rust/crates/portable-atomic-1.11.1.crate) = 185506
SHA256 (rust/crates/portable-atomic-util-0.2.4.crate) = d8a2f0d8d040d7848a709caf78912debcc3f33ee4b3cac47d73d1e1069e83507
SIZE (rust/crates/portable-atomic-util-0.2.4.crate) = 47043
SHA256 (rust/crates/powerfmt-0.2.0.crate) = 439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391
SIZE (rust/crates/powerfmt-0.2.0.crate) = 15165
-SHA256 (rust/crates/proc-macro2-1.0.95.crate) = 02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778
-SIZE (rust/crates/proc-macro2-1.0.95.crate) = 51820
-SHA256 (rust/crates/quote-1.0.40.crate) = 1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d
-SIZE (rust/crates/quote-1.0.40.crate) = 31063
+SHA256 (rust/crates/proc-macro2-1.0.103.crate) = 5ee95bc4ef87b8d5ba32e8b7714ccc834865276eab0aed5c9958d00ec45f49e8
+SIZE (rust/crates/proc-macro2-1.0.103.crate) = 60024
+SHA256 (rust/crates/quote-1.0.42.crate) = a338cc41d27e6cc6dce6cefc13a0729dfbb81c262b1f519331575dd80ef3067f
+SIZE (rust/crates/quote-1.0.42.crate) = 31504
SHA256 (rust/crates/redox_syscall-0.2.16.crate) = fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a
SIZE (rust/crates/redox_syscall-0.2.16.crate) = 24012
-SHA256 (rust/crates/redox_users-0.5.0.crate) = dd6f9d3d47bdd2ad6945c5015a226ec6155d0bcdfd8f7cd29f86b71f8de99d2b
-SIZE (rust/crates/redox_users-0.5.0.crate) = 15586
-SHA256 (rust/crates/rustc-demangle-0.1.24.crate) = 719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f
-SIZE (rust/crates/rustc-demangle-0.1.24.crate) = 29047
-SHA256 (rust/crates/rustix-1.0.7.crate) = c71e83d6afe7ff64890ec6b71d6a69bb8a610ab78ce364b3352876bb4c801266
-SIZE (rust/crates/rustix-1.0.7.crate) = 414500
+SHA256 (rust/crates/redox_users-0.5.2.crate) = a4e608c6638b9c18977b00b475ac1f28d14e84b27d8d42f70e0bf1e3dec127ac
+SIZE (rust/crates/redox_users-0.5.2.crate) = 17280
+SHA256 (rust/crates/rustix-1.1.2.crate) = cd15f8a2c5551a84d56efdc1cd049089e409ac19a3072d5037a17fd70719ff3e
+SIZE (rust/crates/rustix-1.1.2.crate) = 422717
+SHA256 (rust/crates/rustversion-1.0.22.crate) = b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d
+SIZE (rust/crates/rustversion-1.0.22.crate) = 21096
SHA256 (rust/crates/ryu-1.0.20.crate) = 28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f
SIZE (rust/crates/ryu-1.0.20.crate) = 48738
+SHA256 (rust/crates/same-file-1.0.6.crate) = 93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502
+SIZE (rust/crates/same-file-1.0.6.crate) = 10183
SHA256 (rust/crates/scopeguard-1.2.0.crate) = 94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49
SIZE (rust/crates/scopeguard-1.2.0.crate) = 11619
-SHA256 (rust/crates/serde-1.0.219.crate) = 5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6
-SIZE (rust/crates/serde-1.0.219.crate) = 78983
-SHA256 (rust/crates/serde_derive-1.0.219.crate) = 5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00
-SIZE (rust/crates/serde_derive-1.0.219.crate) = 57798
-SHA256 (rust/crates/serde_json-1.0.140.crate) = 20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373
-SIZE (rust/crates/serde_json-1.0.140.crate) = 154852
+SHA256 (rust/crates/serde-1.0.228.crate) = 9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e
+SIZE (rust/crates/serde-1.0.228.crate) = 83652
+SHA256 (rust/crates/serde_core-1.0.228.crate) = 41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad
+SIZE (rust/crates/serde_core-1.0.228.crate) = 63111
+SHA256 (rust/crates/serde_derive-1.0.228.crate) = d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79
+SIZE (rust/crates/serde_derive-1.0.228.crate) = 59605
+SHA256 (rust/crates/serde_json-1.0.145.crate) = 402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c
+SIZE (rust/crates/serde_json-1.0.145.crate) = 155748
SHA256 (rust/crates/shell-escape-0.1.5.crate) = 45bb67a18fa91266cc7807181f62f9178a6873bfad7dc788c42e6430db40184f
SIZE (rust/crates/shell-escape-0.1.5.crate) = 6847
SHA256 (rust/crates/shlex-1.3.0.crate) = 0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64
SIZE (rust/crates/shlex-1.3.0.crate) = 18713
-SHA256 (rust/crates/signal-hook-registry-1.4.5.crate) = 9203b8055f63a2a00e2f593bb0510367fe707d7ff1e5c872de2f537b339e5410
-SIZE (rust/crates/signal-hook-registry-1.4.5.crate) = 19004
-SHA256 (rust/crates/slab-0.4.9.crate) = 8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67
-SIZE (rust/crates/slab-0.4.9.crate) = 17108
+SHA256 (rust/crates/signal-hook-registry-1.4.7.crate) = 7664a098b8e616bdfcc2dc0e9ac44eb231eedf41db4e9fe95d8d32ec728dedad
+SIZE (rust/crates/signal-hook-registry-1.4.7.crate) = 19491
+SHA256 (rust/crates/slab-0.4.11.crate) = 7a2ae44ef20feb57a68b23d846850f861394c2e02dc425a50098ae8c90267589
+SIZE (rust/crates/slab-0.4.11.crate) = 18549
SHA256 (rust/crates/sled-0.34.7.crate) = 7f96b4737c2ce5987354855aed3797279def4ebf734436c6aa4552cf8e169935
SIZE (rust/crates/sled-0.34.7.crate) = 485296
-SHA256 (rust/crates/smallvec-1.15.0.crate) = 8917285742e9f3e1683f0a9c4e6b57960b7314d0b08d30d1ecd426713ee2eee9
-SIZE (rust/crates/smallvec-1.15.0.crate) = 38113
+SHA256 (rust/crates/smallvec-1.15.1.crate) = 67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03
+SIZE (rust/crates/smallvec-1.15.1.crate) = 38116
SHA256 (rust/crates/strsim-0.11.1.crate) = 7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f
SIZE (rust/crates/strsim-0.11.1.crate) = 14266
-SHA256 (rust/crates/syn-2.0.101.crate) = 8ce2b7fc941b3a24138a0a7cf8e858bfc6a992e7978a068a5c760deb0ed43caf
-SIZE (rust/crates/syn-2.0.101.crate) = 299250
-SHA256 (rust/crates/terminal_size-0.4.2.crate) = 45c6481c4829e4cc63825e62c49186a34538b7b2750b73b266581ffb612fb5ed
-SIZE (rust/crates/terminal_size-0.4.2.crate) = 9976
-SHA256 (rust/crates/thiserror-2.0.12.crate) = 567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708
-SIZE (rust/crates/thiserror-2.0.12.crate) = 28693
-SHA256 (rust/crates/thiserror-impl-2.0.12.crate) = 7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d
-SIZE (rust/crates/thiserror-impl-2.0.12.crate) = 21141
-SHA256 (rust/crates/time-0.3.41.crate) = 8a7619e19bc266e0f9c5e6686659d394bc57973859340060a69221e57dbc0c40
-SIZE (rust/crates/time-0.3.41.crate) = 138369
-SHA256 (rust/crates/time-core-0.1.4.crate) = c9e9a38711f559d9e3ce1cdb06dd7c5b8ea546bc90052da6d06bb76da74bb07c
-SIZE (rust/crates/time-core-0.1.4.crate) = 8422
-SHA256 (rust/crates/time-macros-0.2.22.crate) = 3526739392ec93fd8b359c8e98514cb3e8e021beb4e5f597b00a0221f8ed8a49
-SIZE (rust/crates/time-macros-0.2.22.crate) = 24604
-SHA256 (rust/crates/tokio-1.45.0.crate) = 2513ca694ef9ede0fb23fe71a4ee4107cb102b9dc1930f6d0fd77aae068ae165
-SIZE (rust/crates/tokio-1.45.0.crate) = 800721
-SHA256 (rust/crates/tokio-macros-2.5.0.crate) = 6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8
-SIZE (rust/crates/tokio-macros-2.5.0.crate) = 12617
-SHA256 (rust/crates/tokio-process-stream-0.4.0.crate) = 2f09c7fc9546d3b9586bc95c58ac2bdb48b07c538a26e317b558e6de2fac98b8
-SIZE (rust/crates/tokio-process-stream-0.4.0.crate) = 5453
+SHA256 (rust/crates/syn-2.0.110.crate) = a99801b5bd34ede4cf3fc688c5919368fea4e4814a4664359503e6015b280aea
+SIZE (rust/crates/syn-2.0.110.crate) = 302184
+SHA256 (rust/crates/terminal_size-0.4.3.crate) = 60b8cb979cb11c32ce1603f8137b22262a9d131aaa5c37b5678025f22b8becd0
+SIZE (rust/crates/terminal_size-0.4.3.crate) = 10686
+SHA256 (rust/crates/thiserror-2.0.17.crate) = f63587ca0f12b72a0600bcba1d40081f830876000bb46dd2337a3051618f4fc8
+SIZE (rust/crates/thiserror-2.0.17.crate) = 28857
+SHA256 (rust/crates/thiserror-impl-2.0.17.crate) = 3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913
+SIZE (rust/crates/thiserror-impl-2.0.17.crate) = 21344
+SHA256 (rust/crates/time-0.3.44.crate) = 91e7d9e3bb61134e77bde20dd4825b97c010155709965fedf0f49bb138e52a9d
+SIZE (rust/crates/time-0.3.44.crate) = 143200
+SHA256 (rust/crates/time-core-0.1.6.crate) = 40868e7c1d2f0b8d73e4a8c7f0ff63af4f6d19be117e90bd73eb1d62cf831c6b
+SIZE (rust/crates/time-core-0.1.6.crate) = 9105
+SHA256 (rust/crates/time-macros-0.2.24.crate) = 30cfb0125f12d9c277f35663a0a33f8c30190f4e4574868a330595412d34ebf3
+SIZE (rust/crates/time-macros-0.2.24.crate) = 24715
+SHA256 (rust/crates/tokio-1.48.0.crate) = ff360e02eab121e0bc37a2d3b4d4dc622e6eda3a8e5253d5435ecf5bd4c68408
+SIZE (rust/crates/tokio-1.48.0.crate) = 843434
+SHA256 (rust/crates/tokio-macros-2.6.0.crate) = af407857209536a95c8e56f8231ef2c2e2aff839b22e07a1ffcbc617e9db9fa5
+SIZE (rust/crates/tokio-macros-2.6.0.crate) = 16505
+SHA256 (rust/crates/tokio-process-stream-0.4.1.crate) = a0e450910f9b9b6ec970e872eb4b4264e4294e25b4d1e087a78d26ab86b67790
+SIZE (rust/crates/tokio-process-stream-0.4.1.crate) = 8637
SHA256 (rust/crates/tokio-stream-0.1.17.crate) = eca58d7bba4a75707817a2c44174253f9236b2d5fbd055602e9d5c07c139a047
SIZE (rust/crates/tokio-stream-0.1.17.crate) = 38477
-SHA256 (rust/crates/tokio-util-0.7.15.crate) = 66a539a9ad6d5d281510d5bd368c973d636c02dbf8a67300bfb6b950696ad7df
-SIZE (rust/crates/tokio-util-0.7.15.crate) = 124255
-SHA256 (rust/crates/unicode-ident-1.0.18.crate) = 5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512
-SIZE (rust/crates/unicode-ident-1.0.18.crate) = 47743
-SHA256 (rust/crates/unicode-width-0.2.0.crate) = 1fc81956842c57dac11422a97c3b8195a1ff727f06e85c84ed2e8aa277c9a0fd
-SIZE (rust/crates/unicode-width-0.2.0.crate) = 271509
+SHA256 (rust/crates/tokio-util-0.7.17.crate) = 2efa149fe76073d6e8fd97ef4f4eca7b67f599660115591483572e406e165594
+SIZE (rust/crates/tokio-util-0.7.17.crate) = 133898
+SHA256 (rust/crates/unicode-ident-1.0.22.crate) = 9312f7c4f6ff9069b165498234ce8be658059c6728633667c526e27dc2cf1df5
+SIZE (rust/crates/unicode-ident-1.0.22.crate) = 47919
+SHA256 (rust/crates/unicode-width-0.2.2.crate) = b4ac048d71ede7ee76d585517add45da530660ef4390e49b098733c6e897f254
+SIZE (rust/crates/unicode-width-0.2.2.crate) = 282768
+SHA256 (rust/crates/unit-prefix-0.5.2.crate) = 81e544489bf3d8ef66c953931f56617f423cd4b5494be343d9b9d3dda037b9a3
+SIZE (rust/crates/unit-prefix-0.5.2.crate) = 8041
SHA256 (rust/crates/utf8parse-0.2.2.crate) = 06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821
SIZE (rust/crates/utf8parse-0.2.2.crate) = 13499
-SHA256 (rust/crates/wasi-0.11.0+wasi-snapshot-preview1.crate) = 9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423
-SIZE (rust/crates/wasi-0.11.0+wasi-snapshot-preview1.crate) = 28131
-SHA256 (rust/crates/wasm-bindgen-0.2.100.crate) = 1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5
-SIZE (rust/crates/wasm-bindgen-0.2.100.crate) = 48288
-SHA256 (rust/crates/wasm-bindgen-backend-0.2.100.crate) = 2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6
-SIZE (rust/crates/wasm-bindgen-backend-0.2.100.crate) = 32111
-SHA256 (rust/crates/wasm-bindgen-macro-0.2.100.crate) = 7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407
-SIZE (rust/crates/wasm-bindgen-macro-0.2.100.crate) = 9663
-SHA256 (rust/crates/wasm-bindgen-macro-support-0.2.100.crate) = 8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de
-SIZE (rust/crates/wasm-bindgen-macro-support-0.2.100.crate) = 26243
-SHA256 (rust/crates/wasm-bindgen-shared-0.2.100.crate) = 1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d
-SIZE (rust/crates/wasm-bindgen-shared-0.2.100.crate) = 8570
+SHA256 (rust/crates/wasi-0.11.1+wasi-snapshot-preview1.crate) = ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b
+SIZE (rust/crates/wasi-0.11.1+wasi-snapshot-preview1.crate) = 28477
+SHA256 (rust/crates/wasm-bindgen-0.2.105.crate) = da95793dfc411fbbd93f5be7715b0578ec61fe87cb1a42b12eb625caa5c5ea60
+SIZE (rust/crates/wasm-bindgen-0.2.105.crate) = 48215
+SHA256 (rust/crates/wasm-bindgen-macro-0.2.105.crate) = 04264334509e04a7bf8690f2384ef5265f05143a4bff3889ab7a3269adab59c2
+SIZE (rust/crates/wasm-bindgen-macro-0.2.105.crate) = 9264
+SHA256 (rust/crates/wasm-bindgen-macro-support-0.2.105.crate) = 420bc339d9f322e562942d52e115d57e950d12d88983a14c79b86859ee6c7ebc
+SIZE (rust/crates/wasm-bindgen-macro-support-0.2.105.crate) = 49633
+SHA256 (rust/crates/wasm-bindgen-shared-0.2.105.crate) = 76f218a38c84bcb33c25ec7059b07847d465ce0e0a76b995e134a45adcb6af76
+SIZE (rust/crates/wasm-bindgen-shared-0.2.105.crate) = 9269
SHA256 (rust/crates/web-time-1.1.0.crate) = 5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb
SIZE (rust/crates/web-time-1.1.0.crate) = 18026
SHA256 (rust/crates/winapi-0.3.9.crate) = 5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419
SIZE (rust/crates/winapi-0.3.9.crate) = 1200382
SHA256 (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6
SIZE (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = 2918815
+SHA256 (rust/crates/winapi-util-0.1.11.crate) = c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22
+SIZE (rust/crates/winapi-util-0.1.11.crate) = 13368
SHA256 (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f
SIZE (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 2947998
-SHA256 (rust/crates/windows-sys-0.52.0.crate) = 282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d
-SIZE (rust/crates/windows-sys-0.52.0.crate) = 2576877
-SHA256 (rust/crates/windows-sys-0.59.0.crate) = 1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b
-SIZE (rust/crates/windows-sys-0.59.0.crate) = 2387323
-SHA256 (rust/crates/windows-targets-0.52.6.crate) = 9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973
-SIZE (rust/crates/windows-targets-0.52.6.crate) = 6403
-SHA256 (rust/crates/windows_aarch64_gnullvm-0.52.6.crate) = 32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3
-SIZE (rust/crates/windows_aarch64_gnullvm-0.52.6.crate) = 435718
-SHA256 (rust/crates/windows_aarch64_msvc-0.52.6.crate) = 09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469
-SIZE (rust/crates/windows_aarch64_msvc-0.52.6.crate) = 832615
-SHA256 (rust/crates/windows_i686_gnu-0.52.6.crate) = 8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b
-SIZE (rust/crates/windows_i686_gnu-0.52.6.crate) = 880402
-SHA256 (rust/crates/windows_i686_gnullvm-0.52.6.crate) = 0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66
-SIZE (rust/crates/windows_i686_gnullvm-0.52.6.crate) = 475940
-SHA256 (rust/crates/windows_i686_msvc-0.52.6.crate) = 240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66
-SIZE (rust/crates/windows_i686_msvc-0.52.6.crate) = 901163
-SHA256 (rust/crates/windows_x86_64_gnu-0.52.6.crate) = 147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78
-SIZE (rust/crates/windows_x86_64_gnu-0.52.6.crate) = 836363
-SHA256 (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d
-SIZE (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 435707
-SHA256 (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec
-SIZE (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 832564
-SHA256 (alexheretic-ab-av1-v0.10.1_GH0.tar.gz) = 837c3016f6eeca3ea174bdaffcc9bb29cc4917a05f43367579b8b0d7bf68db15
-SIZE (alexheretic-ab-av1-v0.10.1_GH0.tar.gz) = 59126
+SHA256 (rust/crates/windows-link-0.2.1.crate) = f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5
+SIZE (rust/crates/windows-link-0.2.1.crate) = 6133
+SHA256 (rust/crates/windows-sys-0.60.2.crate) = f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb
+SIZE (rust/crates/windows-sys-0.60.2.crate) = 2518479
+SHA256 (rust/crates/windows-sys-0.61.2.crate) = ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc
+SIZE (rust/crates/windows-sys-0.61.2.crate) = 2517186
+SHA256 (rust/crates/windows-targets-0.53.5.crate) = 4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3
+SIZE (rust/crates/windows-targets-0.53.5.crate) = 7126
+SHA256 (rust/crates/windows_aarch64_gnullvm-0.53.1.crate) = a9d8416fa8b42f5c947f8482c43e7d89e73a173cead56d044f6a56104a6d1b53
+SIZE (rust/crates/windows_aarch64_gnullvm-0.53.1.crate) = 787748
+SHA256 (rust/crates/windows_aarch64_msvc-0.53.1.crate) = b9d782e804c2f632e395708e99a94275910eb9100b2114651e04744e9b125006
+SIZE (rust/crates/windows_aarch64_msvc-0.53.1.crate) = 838009
+SHA256 (rust/crates/windows_i686_gnu-0.53.1.crate) = 960e6da069d81e09becb0ca57a65220ddff016ff2d6af6a223cf372a506593a3
+SIZE (rust/crates/windows_i686_gnu-0.53.1.crate) = 939775
+SHA256 (rust/crates/windows_i686_gnullvm-0.53.1.crate) = fa7359d10048f68ab8b09fa71c3daccfb0e9b559aed648a8f95469c27057180c
+SIZE (rust/crates/windows_i686_gnullvm-0.53.1.crate) = 857396
+SHA256 (rust/crates/windows_i686_msvc-0.53.1.crate) = 1e7ac75179f18232fe9c285163565a57ef8d3c89254a30685b57d83a38d326c2
+SIZE (rust/crates/windows_i686_msvc-0.53.1.crate) = 907688
+SHA256 (rust/crates/windows_x86_64_gnu-0.53.1.crate) = 9c3842cdd74a865a8066ab39c8a7a473c0778a3f29370b5fd6b4b9aa7df4a499
+SIZE (rust/crates/windows_x86_64_gnu-0.53.1.crate) = 903712
+SHA256 (rust/crates/windows_x86_64_gnullvm-0.53.1.crate) = 0ffa179e2d07eee8ad8f57493436566c7cc30ac536a3379fdf008f47f6bb7ae1
+SIZE (rust/crates/windows_x86_64_gnullvm-0.53.1.crate) = 787739
+SHA256 (rust/crates/windows_x86_64_msvc-0.53.1.crate) = d6bbff5f0aada427a1e5a6da5f1f98158182f26556f345ac9e04d36d0ebed650
+SIZE (rust/crates/windows_x86_64_msvc-0.53.1.crate) = 837950
+SHA256 (alexheretic-ab-av1-v0.10.2_GH0.tar.gz) = 933024405569e0f120db2a78dbfb3488553765d69ae43d99cba8eda64c7886c6
+SIZE (alexheretic-ab-av1-v0.10.2_GH0.tar.gz) = 59881
diff --git a/multimedia/av1an/Makefile b/multimedia/av1an/Makefile
index 6189bb1887bf..7a2ef68e6465 100644
--- a/multimedia/av1an/Makefile
+++ b/multimedia/av1an/Makefile
@@ -1,11 +1,10 @@
PORTNAME= av1an
-DISTVERSION= 0.4.4
-PORTREVISION= 8
+DISTVERSION= 0.5.0
CATEGORIES= multimedia
MAINTAINER= ports@FreeBSD.org
COMMENT= Command-line encoding framework with per scene quality
-WWW= https://github.com/master-of-zen/Av1an
+WWW= https://github.com/rust-av/Av1an
LICENSE= GPLv3
LICENSE_FILE= ${WRKSRC}/LICENSE.md
@@ -15,18 +14,14 @@ BUILD_DEPENDS_amd64= nasm:devel/nasm
LIB_DEPENDS= libavformat.so:multimedia/ffmpeg \
libvapoursynth-script.so:multimedia/vapoursynth
-USES= cargo llvm
+USES= cargo llvm localbase:ldflags
USE_GITHUB= yes
-GH_ACCOUNT= master-of-zen
+GH_TAGNAME= 0.5
+GH_ACCOUNT= rust-av
GH_PROJECT= Av1an
PLIST_FILES= bin/${PORTNAME}
# XXX https://github.com/rust-lang/cargo/issues/4101
CARGO_INSTALL_PATH= ${PORTNAME}
-post-patch:
- @${REINPLACE_CMD} -e 's,"llvm-config,"${LLVM_CONFIG},' \
- ${WRKSRC_crate_clang-sys}/build/common.rs \
- ${WRKSRC_crate_clang-sys}/src/support.rs
-
.include <bsd.port.mk>
diff --git a/multimedia/av1an/Makefile.crates b/multimedia/av1an/Makefile.crates
index dc536f45fb57..2033a6a259ba 100644
--- a/multimedia/av1an/Makefile.crates
+++ b/multimedia/av1an/Makefile.crates
@@ -1,120 +1,115 @@
-CARGO_CRATES= addr2line-0.22.0 \
- adler-1.0.2 \
- affinity-0.1.2 \
+CARGO_CRATES= affinity-0.1.2 \
aho-corasick-1.1.3 \
+ aligned-0.4.2 \
aligned-vec-0.5.0 \
- android-tzdata-0.1.1 \
- android_system_properties-0.1.5 \
- ansi_term-0.12.1 \
- anstream-0.6.15 \
- anstyle-1.0.8 \
- anstyle-parse-0.2.5 \
- anstyle-query-1.1.1 \
- anstyle-wincon-3.0.4 \
- anyhow-1.0.86 \
- arbitrary-1.3.2 \
- arg_enum_proc_macro-0.3.4 \
- arrayvec-0.7.4 \
- autocfg-1.3.0 \
- av-bitstream-0.2.0 \
- av-data-0.4.2 \
- av-format-0.7.0 \
+ anstream-0.6.18 \
+ anstyle-1.0.10 \
+ anstyle-parse-0.2.6 \
+ anstyle-query-1.1.2 \
+ anstyle-wincon-3.0.7 \
+ anyhow-1.0.99 \
+ arrayvec-0.7.6 \
+ as-slice-0.2.1 \
+ assert_cmd-2.0.17 \
+ autocfg-1.4.0 \
+ av-bitstream-0.2.1 \
+ av-data-0.4.4 \
+ av-decoders-0.4.0 \
+ av-format-0.7.1 \
av-ivf-0.5.0 \
- av-scenechange-0.12.2 \
- av1-grain-0.2.3 \
- backtrace-0.3.73 \
- bindgen-0.69.4 \
+ av-scenechange-0.17.3 \
+ av1-grain-0.2.4 \
bitflags-1.3.2 \
- bitflags-2.6.0 \
- bitstream-io-2.5.0 \
- built-0.7.4 \
- bumpalo-3.16.0 \
- byte-slice-cast-1.2.2 \
- byteorder-1.5.0 \
- bytes-1.7.1 \
- camino-1.1.7 \
- cargo-platform-0.1.8 \
- cargo_metadata-0.18.1 \
- cc-1.1.8 \
- cexpr-0.6.0 \
- cfg-expr-0.15.8 \
- cfg-if-1.0.0 \
- chrono-0.4.38 \
- clang-sys-1.8.1 \
- clap-4.5.15 \
- clap_builder-4.5.15 \
- clap_derive-4.5.13 \
- clap_lex-0.7.2 \
- colorchoice-1.0.2 \
- console-0.15.8 \
- core-foundation-sys-0.8.6 \
- crossbeam-channel-0.5.13 \
- crossbeam-deque-0.8.5 \
+ bitflags-2.9.1 \
+ bstr-1.12.0 \
+ bumpalo-3.17.0 \
+ byte-slice-cast-1.2.3 \
+ bytes-1.10.1 \
+ camino-1.1.9 \
+ cargo-platform-0.1.9 \
+ cargo_metadata-0.19.2 \
+ cc-1.2.23 \
+ cfg-if-1.0.3 \
+ cfg_aliases-0.2.1 \
+ clap-4.5.48 \
+ clap_builder-4.5.48 \
+ clap_complete-4.5.58 \
+ clap_derive-4.5.47 \
+ clap_lex-0.7.4 \
+ colorchoice-1.0.3 \
+ colored-3.0.0 \
+ console-0.16.0 \
+ cpufeatures-0.2.17 \
+ crossbeam-channel-0.5.15 \
+ crossbeam-deque-0.8.6 \
crossbeam-epoch-0.9.18 \
- crossbeam-utils-0.8.20 \
- darling-0.20.10 \
- darling_core-0.20.10 \
- darling_macro-0.20.10 \
- dashmap-6.0.1 \
- deranged-0.3.11 \
- derive_builder-0.20.0 \
- derive_builder_core-0.20.0 \
- derive_builder_macro-0.20.0 \
- either-1.13.0 \
- encode_unicode-0.3.6 \
- equivalent-1.0.1 \
- errno-0.3.9 \
- ffmpeg-sys-the-third-2.0.0+ffmpeg-7.0 \
- ffmpeg-the-third-2.0.1+ffmpeg-7.0 \
- flexi_logger-0.28.5 \
+ crossbeam-utils-0.8.21 \
+ ctrlc-3.5.0 \
+ darling-0.20.11 \
+ darling_core-0.20.11 \
+ darling_macro-0.20.11 \
+ dashmap-6.1.0 \
+ deranged-0.4.0 \
+ derive_builder-0.20.2 \
+ derive_builder_core-0.20.2 \
+ derive_builder_macro-0.20.2 \
+ difflib-0.4.0 \
+ dispatch-0.2.0 \
+ displaydoc-0.2.5 \
+ doc-comment-0.3.3 \
+ either-1.15.0 \
+ encode_unicode-1.0.0 \
+ env_home-0.1.0 \
+ errno-0.3.12 \
+ fastrand-2.3.0 \
fnv-1.0.7 \
form_urlencoded-1.2.1 \
- getrandom-0.2.15 \
- getset-0.1.2 \
- gimli-0.29.0 \
- git2-0.19.0 \
- glob-0.3.1 \
+ futures-0.3.31 \
+ futures-channel-0.3.31 \
+ futures-core-0.3.31 \
+ futures-executor-0.3.31 \
+ futures-io-0.3.31 \
+ futures-sink-0.3.31 \
+ futures-task-0.3.31 \
+ futures-util-0.3.31 \
+ getrandom-0.3.3 \
+ git2-0.20.2 \
hashbrown-0.14.5 \
heck-0.5.0 \
hermit-abi-0.3.9 \
- home-0.5.9 \
- iana-time-zone-0.1.60 \
- iana-time-zone-haiku-0.1.2 \
+ icu_collections-2.0.0 \
+ icu_locale_core-2.0.0 \
+ icu_normalizer-2.0.0 \
+ icu_normalizer_data-2.0.0 \
+ icu_properties-2.0.1 \
+ icu_properties_data-2.0.1 \
+ icu_provider-2.0.0 \
ident_case-1.0.1 \
- idna-0.5.0 \
- indexmap-2.3.0 \
- indicatif-0.17.8 \
- instant-0.1.13 \
- interpolate_name-0.2.4 \
+ idna-1.0.3 \
+ idna_adapter-1.2.1 \
+ indicatif-0.18.0 \
is_terminal_polyfill-1.70.1 \
- itertools-0.12.1 \
- itertools-0.13.0 \
- itoa-1.0.11 \
- jobserver-0.1.32 \
- js-sys-0.3.69 \
+ itertools-0.14.0 \
+ itoa-1.0.15 \
+ jobserver-0.1.33 \
+ js-sys-0.3.77 \
lazy_static-1.5.0 \
- lazycell-1.3.0 \
- libc-0.2.155 \
- libfuzzer-sys-0.4.7 \
- libgit2-sys-0.17.0+1.8.1 \
- libloading-0.8.5 \
- libz-sys-1.1.18 \
- linux-raw-sys-0.4.14 \
- lock_api-0.4.12 \
- log-0.4.22 \
+ libc-0.2.174 \
+ libgit2-sys-0.18.1+1.9.0 \
+ libz-sys-1.1.22 \
+ linux-raw-sys-0.9.4 \
+ litemap-0.8.0 \
+ lock_api-0.4.13 \
+ log-0.4.27 \
matchers-0.1.0 \
- maybe-rayon-0.1.1 \
- memchr-2.7.4 \
+ memchr-2.7.6 \
minimal-lexical-0.2.1 \
- miniz_oxide-0.7.4 \
- mio-1.0.1 \
- nasm-rs-0.2.5 \
- new_debug_unreachable-1.0.6 \
+ nasm-rs-0.3.0 \
+ nix-0.30.1 \
nom-7.1.3 \
- noop_proc_macro-0.3.0 \
+ nom-8.0.0 \
ntapi-0.4.1 \
nu-ansi-term-0.46.0 \
- nu-ansi-term-0.50.1 \
num-bigint-0.4.6 \
num-conv-0.1.0 \
num-derive-0.4.2 \
@@ -123,140 +118,160 @@ CARGO_CRATES= addr2line-0.22.0 \
num-traits-0.2.19 \
num_cpus-1.16.0 \
num_threads-0.1.7 \
- number_prefix-0.4.0 \
- object-0.36.3 \
- once_cell-1.19.0 \
+ objc2-core-foundation-0.3.1 \
+ objc2-io-kit-0.3.1 \
+ once_cell-1.21.3 \
overload-0.1.1 \
- parking_lot-0.12.3 \
- parking_lot_core-0.9.10 \
- paste-1.0.15 \
+ parking_lot-0.12.4 \
+ parking_lot_core-0.9.11 \
+ pastey-0.1.1 \
path_abs-0.5.1 \
percent-encoding-2.3.1 \
- pin-project-lite-0.2.14 \
- pkg-config-0.3.30 \
- plotters-0.3.6 \
- plotters-backend-0.3.6 \
- plotters-svg-0.3.6 \
- portable-atomic-1.7.0 \
+ pin-project-lite-0.2.16 \
+ pin-utils-0.1.0 \
+ pkg-config-0.3.32 \
+ plotters-0.3.7 \
+ plotters-backend-0.3.7 \
+ plotters-svg-0.3.7 \
+ portable-atomic-1.11.0 \
+ potential_utf-0.1.2 \
powerfmt-0.2.0 \
- ppv-lite86-0.2.20 \
- proc-macro-error-1.0.4 \
- proc-macro-error-attr-1.0.4 \
- proc-macro2-1.0.86 \
- profiling-1.0.15 \
- profiling-procmacros-1.0.15 \
- quickcheck-1.0.3 \
- quickcheck_macros-1.0.0 \
- quote-1.0.36 \
- rand-0.8.5 \
- rand_chacha-0.3.1 \
- rand_core-0.6.4 \
- rav1e-0.7.1 \
+ ppv-lite86-0.2.21 \
+ predicates-3.1.3 \
+ predicates-core-1.0.9 \
+ predicates-tree-1.0.12 \
+ proc-macro2-1.0.95 \
+ quote-1.0.40 \
+ r-efi-5.2.0 \
+ rand-0.9.2 \
+ rand_chacha-0.9.0 \
+ rand_core-0.9.3 \
rayon-1.10.0 \
rayon-core-1.12.1 \
- redox_syscall-0.5.3 \
- regex-1.10.6 \
+ redox_syscall-0.5.12 \
+ regex-1.11.3 \
regex-automata-0.1.10 \
- regex-automata-0.4.7 \
+ regex-automata-0.4.11 \
regex-syntax-0.6.29 \
- regex-syntax-0.8.4 \
- rustc-demangle-0.1.24 \
- rustc-hash-1.1.0 \
- rustc_version-0.4.0 \
- rustix-0.38.34 \
- rustversion-1.0.17 \
- ryu-1.0.18 \
+ regex-syntax-0.8.5 \
+ rustc_version-0.4.1 \
+ rustix-1.0.7 \
+ rustversion-1.0.20 \
+ ryu-1.0.20 \
+ scc-2.3.4 \
scopeguard-1.2.0 \
- semver-1.0.23 \
- serde-1.0.205 \
- serde_derive-1.0.205 \
- serde_json-1.0.122 \
- serde_spanned-0.6.7 \
+ sdd-3.0.9 \
+ semver-1.0.26 \
+ serde-1.0.228 \
+ serde_core-1.0.228 \
+ serde_derive-1.0.228 \
+ serde_json-1.0.145 \
+ serial_test-3.2.0 \
+ serial_test_derive-3.2.0 \
sharded-slab-0.1.7 \
shlex-1.3.0 \
- signal-hook-registry-1.4.2 \
- simd_helpers-0.1.0 \
- simdutf8-0.1.4 \
- smallvec-1.13.2 \
+ simdutf8-0.1.5 \
+ slab-0.4.11 \
+ smallvec-1.15.1 \
smawk-0.3.2 \
- socket2-0.5.7 \
- splines-4.3.1 \
+ stable_deref_trait-1.2.0 \
std_prelude-0.2.12 \
stfu8-0.2.7 \
strsim-0.11.1 \
- strum-0.26.3 \
- strum_macros-0.26.4 \
- syn-1.0.109 \
- syn-2.0.72 \
- sysinfo-0.31.2 \
- system-deps-6.2.2 \
- target-lexicon-0.12.16 \
- textwrap-0.16.1 \
- thiserror-1.0.63 \
- thiserror-impl-1.0.63 \
- thread_local-1.1.8 \
- time-0.3.36 \
- time-core-0.1.2 \
- time-macros-0.2.18 \
- tinyvec-1.8.0 \
- tinyvec_macros-0.1.1 \
- tokio-1.39.2 \
- tokio-macros-2.4.0 \
- toml-0.8.19 \
- toml_datetime-0.6.8 \
- toml_edit-0.22.20 \
+ strum-0.27.2 \
+ strum_macros-0.27.1 \
+ syn-2.0.101 \
+ synstructure-0.13.2 \
+ sysinfo-0.36.1 \
+ tempfile-3.23.0 \
+ termtree-0.5.1 \
+ textwrap-0.16.2 \
+ thiserror-1.0.69 \
+ thiserror-2.0.17 \
+ thiserror-impl-1.0.69 \
+ thiserror-impl-2.0.17 \
+ thread_local-1.1.9 \
+ time-0.3.41 \
+ time-core-0.1.4 \
+ time-macros-0.2.22 \
+ tinystr-0.8.1 \
tracing-0.1.41 \
tracing-appender-0.2.3 \
tracing-attributes-0.1.28 \
tracing-core-0.1.33 \
tracing-log-0.2.0 \
tracing-subscriber-0.3.19 \
- unicode-bidi-0.3.15 \
- unicode-ident-1.0.12 \
+ unicode-ident-1.0.18 \
unicode-linebreak-0.1.5 \
- unicode-normalization-0.1.23 \
- unicode-width-0.1.13 \
- url-2.5.2 \
+ unicode-width-0.2.0 \
+ unit-prefix-0.5.1 \
+ url-2.5.4 \
+ utf8_iter-1.0.4 \
utf8parse-0.2.2 \
- v_frame-0.3.8 \
- valuable-0.1.0 \
+ v_frame-0.3.9 \
+ valuable-0.1.1 \
vapoursynth-0.4.0 \
vapoursynth-sys-0.4.1 \
vcpkg-0.2.15 \
- vergen-9.0.0 \
- vergen-git2-1.0.0 \
- vergen-lib-0.1.3 \
- version-compare-0.2.0 \
- version_check-0.9.5 \
- wasi-0.11.0+wasi-snapshot-preview1 \
- wasm-bindgen-0.2.92 \
- wasm-bindgen-backend-0.2.92 \
- wasm-bindgen-macro-0.2.92 \
- wasm-bindgen-macro-support-0.2.92 \
- wasm-bindgen-shared-0.2.92 \
- web-sys-0.3.69 \
- which-6.0.2 \
+ vergen-9.0.6 \
+ vergen-git2-1.0.7 \
+ vergen-lib-0.1.6 \
+ wait-timeout-0.2.1 \
+ wasi-0.14.2+wasi-0.2.4 \
+ wasm-bindgen-0.2.100 \
+ wasm-bindgen-backend-0.2.100 \
+ wasm-bindgen-macro-0.2.100 \
+ wasm-bindgen-macro-support-0.2.100 \
+ wasm-bindgen-shared-0.2.100 \
+ web-sys-0.3.77 \
+ web-time-1.1.0 \
+ which-8.0.0 \
winapi-0.3.9 \
winapi-i686-pc-windows-gnu-0.4.0 \
winapi-x86_64-pc-windows-gnu-0.4.0 \
- windows-0.57.0 \
- windows-core-0.52.0 \
- windows-core-0.57.0 \
- windows-implement-0.57.0 \
- windows-interface-0.57.0 \
- windows-result-0.1.2 \
- windows-sys-0.52.0 \
+ windows-0.61.1 \
+ windows-collections-0.2.0 \
+ windows-core-0.61.2 \
+ windows-future-0.2.1 \
+ windows-implement-0.60.0 \
+ windows-interface-0.59.1 \
+ windows-link-0.1.1 \
+ windows-link-0.2.0 \
+ windows-numerics-0.2.0 \
+ windows-result-0.3.4 \
+ windows-strings-0.4.2 \
+ windows-sys-0.59.0 \
+ windows-sys-0.60.2 \
+ windows-sys-0.61.0 \
windows-targets-0.52.6 \
+ windows-targets-0.53.2 \
+ windows-threading-0.1.0 \
windows_aarch64_gnullvm-0.52.6 \
+ windows_aarch64_gnullvm-0.53.0 \
windows_aarch64_msvc-0.52.6 \
+ windows_aarch64_msvc-0.53.0 \
windows_i686_gnu-0.52.6 \
+ windows_i686_gnu-0.53.0 \
windows_i686_gnullvm-0.52.6 \
+ windows_i686_gnullvm-0.53.0 \
windows_i686_msvc-0.52.6 \
+ windows_i686_msvc-0.53.0 \
windows_x86_64_gnu-0.52.6 \
+ windows_x86_64_gnu-0.53.0 \
windows_x86_64_gnullvm-0.52.6 \
+ windows_x86_64_gnullvm-0.53.0 \
windows_x86_64_msvc-0.52.6 \
- winnow-0.6.18 \
+ windows_x86_64_msvc-0.53.0 \
winsafe-0.0.19 \
+ wit-bindgen-rt-0.39.0 \
+ writeable-0.6.1 \
y4m-0.8.0 \
- zerocopy-0.7.35 \
- zerocopy-derive-0.7.35
+ yoke-0.8.0 \
+ yoke-derive-0.8.0 \
+ zerocopy-0.8.25 \
+ zerocopy-derive-0.8.25 \
+ zerofrom-0.1.6 \
+ zerofrom-derive-0.1.6 \
+ zerotrie-0.2.2 \
+ zerovec-0.11.2 \
+ zerovec-derive-0.11.1
diff --git a/multimedia/av1an/distinfo b/multimedia/av1an/distinfo
index fe5a4b3d25b1..ef40a55009fb 100644
--- a/multimedia/av1an/distinfo
+++ b/multimedia/av1an/distinfo
@@ -1,238 +1,228 @@
-TIMESTAMP = 1735393288
-SHA256 (rust/crates/addr2line-0.22.0.crate) = 6e4503c46a5c0c7844e948c9a4d6acd9f50cccb4de1c48eb9e291ea17470c678
-SIZE (rust/crates/addr2line-0.22.0.crate) = 39156
-SHA256 (rust/crates/adler-1.0.2.crate) = f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe
-SIZE (rust/crates/adler-1.0.2.crate) = 12778
+TIMESTAMP = 1764058894
SHA256 (rust/crates/affinity-0.1.2.crate) = 763e484feceb7dd021b21c5c6f81aee06b1594a743455ec7efbf72e6355e447b
SIZE (rust/crates/affinity-0.1.2.crate) = 5372
SHA256 (rust/crates/aho-corasick-1.1.3.crate) = 8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916
SIZE (rust/crates/aho-corasick-1.1.3.crate) = 183311
+SHA256 (rust/crates/aligned-0.4.2.crate) = 377e4c0ba83e4431b10df45c1d4666f178ea9c552cac93e60c3a88bf32785923
+SIZE (rust/crates/aligned-0.4.2.crate) = 8519
SHA256 (rust/crates/aligned-vec-0.5.0.crate) = 4aa90d7ce82d4be67b64039a3d588d38dbcc6736577de4a847025ce5b0c468d1
SIZE (rust/crates/aligned-vec-0.5.0.crate) = 8921
-SHA256 (rust/crates/android-tzdata-0.1.1.crate) = e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0
-SIZE (rust/crates/android-tzdata-0.1.1.crate) = 7674
-SHA256 (rust/crates/android_system_properties-0.1.5.crate) = 819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311
-SIZE (rust/crates/android_system_properties-0.1.5.crate) = 5243
-SHA256 (rust/crates/ansi_term-0.12.1.crate) = d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2
-SIZE (rust/crates/ansi_term-0.12.1.crate) = 24838
-SHA256 (rust/crates/anstream-0.6.15.crate) = 64e15c1ab1f89faffbf04a634d5e1962e9074f2741eef6d97f3c4e322426d526
-SIZE (rust/crates/anstream-0.6.15.crate) = 29231
-SHA256 (rust/crates/anstyle-1.0.8.crate) = 1bec1de6f59aedf83baf9ff929c98f2ad654b97c9510f4e70cf6f661d49fd5b1
-SIZE (rust/crates/anstyle-1.0.8.crate) = 15771
-SHA256 (rust/crates/anstyle-parse-0.2.5.crate) = eb47de1e80c2b463c735db5b217a0ddc39d612e7ac9e2e96a5aed1f57616c1cb
-SIZE (rust/crates/anstyle-parse-0.2.5.crate) = 22680
-SHA256 (rust/crates/anstyle-query-1.1.1.crate) = 6d36fc52c7f6c869915e99412912f22093507da8d9e942ceaf66fe4b7c14422a
-SIZE (rust/crates/anstyle-query-1.1.1.crate) = 9891
-SHA256 (rust/crates/anstyle-wincon-3.0.4.crate) = 5bf74e1b6e971609db8ca7a9ce79fd5768ab6ae46441c572e46cf596f59e57f8
-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/arbitrary-1.3.2.crate) = 7d5a26814d8dcb93b0e5a0ff3c6d80a8843bafb21b39e8e18a6f05471870e110
-SIZE (rust/crates/arbitrary-1.3.2.crate) = 32037
-SHA256 (rust/crates/arg_enum_proc_macro-0.3.4.crate) = 0ae92a5119aa49cdbcf6b9f893fe4e1d98b04ccbf82ee0584ad948a44a734dea
-SIZE (rust/crates/arg_enum_proc_macro-0.3.4.crate) = 5102
-SHA256 (rust/crates/arrayvec-0.7.4.crate) = 96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711
-SIZE (rust/crates/arrayvec-0.7.4.crate) = 29856
-SHA256 (rust/crates/autocfg-1.3.0.crate) = 0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0
-SIZE (rust/crates/autocfg-1.3.0.crate) = 16524
-SHA256 (rust/crates/av-bitstream-0.2.0.crate) = edfc0f4a8db21e5688fdbcbcddc4495bef847dcebc4c5dae7907fbd963d5996c
-SIZE (rust/crates/av-bitstream-0.2.0.crate) = 9012
-SHA256 (rust/crates/av-data-0.4.2.crate) = d75b98a3525d00f920df9a2d44cc99b9cc5b7dc70d7fbb612cd755270dbe6552
-SIZE (rust/crates/av-data-0.4.2.crate) = 16773
-SHA256 (rust/crates/av-format-0.7.0.crate) = 3849494a36c059343063991bd56ba21ea6b6e144ec263e50fc0b3cf1c02dc3b7
-SIZE (rust/crates/av-format-0.7.0.crate) = 9139
+SHA256 (rust/crates/anstream-0.6.18.crate) = 8acc5369981196006228e28809f761875c0327210a891e941f4c683b3a99529b
+SIZE (rust/crates/anstream-0.6.18.crate) = 29681
+SHA256 (rust/crates/anstyle-1.0.10.crate) = 55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9
+SIZE (rust/crates/anstyle-1.0.10.crate) = 15725
+SHA256 (rust/crates/anstyle-parse-0.2.6.crate) = 3b2d16507662817a6a20a9ea92df6652ee4f94f914589377d69f3b21bc5798a9
+SIZE (rust/crates/anstyle-parse-0.2.6.crate) = 22343
+SHA256 (rust/crates/anstyle-query-1.1.2.crate) = 79947af37f4177cfead1110013d678905c37501914fba0efea834c3fe9a8d60c
+SIZE (rust/crates/anstyle-query-1.1.2.crate) = 9969
+SHA256 (rust/crates/anstyle-wincon-3.0.7.crate) = ca3534e77181a9cc07539ad51f2141fe32f6c3ffd4df76db8ad92346b003ae4e
+SIZE (rust/crates/anstyle-wincon-3.0.7.crate) = 12400
+SHA256 (rust/crates/anyhow-1.0.99.crate) = b0674a1ddeecb70197781e945de4b3b8ffb61fa939a5597bcf48503737663100
+SIZE (rust/crates/anyhow-1.0.99.crate) = 53809
+SHA256 (rust/crates/arrayvec-0.7.6.crate) = 7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50
+SIZE (rust/crates/arrayvec-0.7.6.crate) = 31237
+SHA256 (rust/crates/as-slice-0.2.1.crate) = 516b6b4f0e40d50dcda9365d53964ec74560ad4284da2e7fc97122cd83174516
+SIZE (rust/crates/as-slice-0.2.1.crate) = 6942
+SHA256 (rust/crates/assert_cmd-2.0.17.crate) = 2bd389a4b2970a01282ee455294913c0a43724daedcd1a24c3eb0ec1c1320b66
+SIZE (rust/crates/assert_cmd-2.0.17.crate) = 26914
+SHA256 (rust/crates/autocfg-1.4.0.crate) = ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26
+SIZE (rust/crates/autocfg-1.4.0.crate) = 17712
+SHA256 (rust/crates/av-bitstream-0.2.1.crate) = e539d00bcd8aac3be7f171b32cd0f10de8a279d2824dda582b3fa54d708c8028
+SIZE (rust/crates/av-bitstream-0.2.1.crate) = 9598
+SHA256 (rust/crates/av-data-0.4.4.crate) = fca67ba5d317924c02180c576157afd54babe48a76ebc66ce6d34bb8ba08308e
+SIZE (rust/crates/av-data-0.4.4.crate) = 17576
+SHA256 (rust/crates/av-decoders-0.4.0.crate) = ce3eb4b0697edeafbbb6f15bcf22dde7ae7d8e7449211111a9bbb554862ed9a7
+SIZE (rust/crates/av-decoders-0.4.0.crate) = 28295
+SHA256 (rust/crates/av-format-0.7.1.crate) = 26a8c6178b9cc038bde9f21d239dba7b02dfe446fca3244e30bc271da3c7a375
+SIZE (rust/crates/av-format-0.7.1.crate) = 9570
SHA256 (rust/crates/av-ivf-0.5.0.crate) = f503297c9c08d8a0d2827c817b70644d28f2111ed25ba8a6029170ccb5f90fd6
SIZE (rust/crates/av-ivf-0.5.0.crate) = 9921
-SHA256 (rust/crates/av-scenechange-0.12.2.crate) = f0707e4b0e933849f2955134399e268cbefb96fb9524b0aa3fb612c3d3ddacf5
-SIZE (rust/crates/av-scenechange-0.12.2.crate) = 23810
-SHA256 (rust/crates/av1-grain-0.2.3.crate) = 6678909d8c5d46a42abcf571271e15fdbc0a225e3646cf23762cd415046c78bf
-SIZE (rust/crates/av1-grain-0.2.3.crate) = 34703
-SHA256 (rust/crates/backtrace-0.3.73.crate) = 5cc23269a4f8976d0a4d2e7109211a419fe30e8d88d677cd60b6bc79c5732e0a
-SIZE (rust/crates/backtrace-0.3.73.crate) = 87617
-SHA256 (rust/crates/bindgen-0.69.4.crate) = a00dc851838a2120612785d195287475a3ac45514741da670b735818822129a0
-SIZE (rust/crates/bindgen-0.69.4.crate) = 221092
+SHA256 (rust/crates/av-scenechange-0.17.3.crate) = 5da809cb3aee6dac33f909ee9987ce6aafc91d7359386a03a048305fd1a66fcd
+SIZE (rust/crates/av-scenechange-0.17.3.crate) = 460673
+SHA256 (rust/crates/av1-grain-0.2.4.crate) = 4f3efb2ca85bc610acfa917b5aaa36f3fcbebed5b3182d7f877b02531c4b80c8
+SIZE (rust/crates/av1-grain-0.2.4.crate) = 37050
SHA256 (rust/crates/bitflags-1.3.2.crate) = bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a
SIZE (rust/crates/bitflags-1.3.2.crate) = 23021
-SHA256 (rust/crates/bitflags-2.6.0.crate) = b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de
-SIZE (rust/crates/bitflags-2.6.0.crate) = 45357
-SHA256 (rust/crates/bitstream-io-2.5.0.crate) = 3dcde5f311c85b8ca30c2e4198d4326bc342c76541590106f5fa4a50946ea499
-SIZE (rust/crates/bitstream-io-2.5.0.crate) = 37723
-SHA256 (rust/crates/built-0.7.4.crate) = 236e6289eda5a812bc6b53c3b024039382a2895fbbeef2d748b2931546d392c4
-SIZE (rust/crates/built-0.7.4.crate) = 22242
-SHA256 (rust/crates/bumpalo-3.16.0.crate) = 79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c
-SIZE (rust/crates/bumpalo-3.16.0.crate) = 85677
-SHA256 (rust/crates/byte-slice-cast-1.2.2.crate) = c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c
-SIZE (rust/crates/byte-slice-cast-1.2.2.crate) = 7276
-SHA256 (rust/crates/byteorder-1.5.0.crate) = 1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b
-SIZE (rust/crates/byteorder-1.5.0.crate) = 23288
-SHA256 (rust/crates/bytes-1.7.1.crate) = 8318a53db07bb3f8dca91a600466bdb3f2eaadeedfdbcf02e1accbad9271ba50
-SIZE (rust/crates/bytes-1.7.1.crate) = 63623
-SHA256 (rust/crates/camino-1.1.7.crate) = e0ec6b951b160caa93cc0c7b209e5a3bff7aae9062213451ac99493cd844c239
-SIZE (rust/crates/camino-1.1.7.crate) = 36204
-SHA256 (rust/crates/cargo-platform-0.1.8.crate) = 24b1f0365a6c6bb4020cd05806fd0d33c44d38046b8bd7f0e40814b9763cabfc
-SIZE (rust/crates/cargo-platform-0.1.8.crate) = 11813
-SHA256 (rust/crates/cargo_metadata-0.18.1.crate) = 2d886547e41f740c616ae73108f6eb70afe6d940c7bc697cb30f13daec073037
-SIZE (rust/crates/cargo_metadata-0.18.1.crate) = 24535
-SHA256 (rust/crates/cc-1.1.8.crate) = 504bdec147f2cc13c8b57ed9401fd8a147cc66b67ad5cb241394244f2c947549
-SIZE (rust/crates/cc-1.1.8.crate) = 81843
-SHA256 (rust/crates/cexpr-0.6.0.crate) = 6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766
-SIZE (rust/crates/cexpr-0.6.0.crate) = 17966
-SHA256 (rust/crates/cfg-expr-0.15.8.crate) = d067ad48b8650848b989a59a86c6c36a995d02d2bf778d45c3c5d57bc2718f02
-SIZE (rust/crates/cfg-expr-0.15.8.crate) = 42108
-SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd
-SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934
-SHA256 (rust/crates/chrono-0.4.38.crate) = a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401
-SIZE (rust/crates/chrono-0.4.38.crate) = 220559
-SHA256 (rust/crates/clang-sys-1.8.1.crate) = 0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4
-SIZE (rust/crates/clang-sys-1.8.1.crate) = 44009
-SHA256 (rust/crates/clap-4.5.15.crate) = 11d8838454fda655dafd3accb2b6e2bea645b9e4078abe84a22ceb947235c5cc
-SIZE (rust/crates/clap-4.5.15.crate) = 56612
-SHA256 (rust/crates/clap_builder-4.5.15.crate) = 216aec2b177652e3846684cbfe25c9964d18ec45234f0f5da5157b207ed1aab6
-SIZE (rust/crates/clap_builder-4.5.15.crate) = 163717
-SHA256 (rust/crates/clap_derive-4.5.13.crate) = 501d359d5f3dcaf6ecdeee48833ae73ec6e42723a1e52419c79abf9507eec0a0
-SIZE (rust/crates/clap_derive-4.5.13.crate) = 30132
-SHA256 (rust/crates/clap_lex-0.7.2.crate) = 1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97
-SIZE (rust/crates/clap_lex-0.7.2.crate) = 12805
-SHA256 (rust/crates/colorchoice-1.0.2.crate) = d3fd119d74b830634cea2a0f58bbd0d54540518a14397557951e79340abc28c0
-SIZE (rust/crates/colorchoice-1.0.2.crate) = 7924
-SHA256 (rust/crates/console-0.15.8.crate) = 0e1f83fc076bd6dd27517eacdf25fef6c4dfe5f1d7448bafaaf3a26f13b5e4eb
-SIZE (rust/crates/console-0.15.8.crate) = 36364
-SHA256 (rust/crates/core-foundation-sys-0.8.6.crate) = 06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f
-SIZE (rust/crates/core-foundation-sys-0.8.6.crate) = 37629
-SHA256 (rust/crates/crossbeam-channel-0.5.13.crate) = 33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2
-SIZE (rust/crates/crossbeam-channel-0.5.13.crate) = 91174
-SHA256 (rust/crates/crossbeam-deque-0.8.5.crate) = 613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d
-SIZE (rust/crates/crossbeam-deque-0.8.5.crate) = 21726
+SHA256 (rust/crates/bitflags-2.9.1.crate) = 1b8e56985ec62d17e9c1001dc89c88ecd7dc08e47eba5ec7c29c7b5eeecde967
+SIZE (rust/crates/bitflags-2.9.1.crate) = 47913
+SHA256 (rust/crates/bstr-1.12.0.crate) = 234113d19d0d7d613b40e86fb654acf958910802bcceab913a4f9e7cda03b1a4
+SIZE (rust/crates/bstr-1.12.0.crate) = 351557
+SHA256 (rust/crates/bumpalo-3.17.0.crate) = 1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf
+SIZE (rust/crates/bumpalo-3.17.0.crate) = 91975
+SHA256 (rust/crates/byte-slice-cast-1.2.3.crate) = 7575182f7272186991736b70173b0ea045398f984bf5ebbb3804736ce1330c9d
+SIZE (rust/crates/byte-slice-cast-1.2.3.crate) = 7498
+SHA256 (rust/crates/bytes-1.10.1.crate) = d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a
+SIZE (rust/crates/bytes-1.10.1.crate) = 76779
+SHA256 (rust/crates/camino-1.1.9.crate) = 8b96ec4966b5813e2c0507c1f86115c8c5abaadc3980879c3424042a02fd1ad3
+SIZE (rust/crates/camino-1.1.9.crate) = 37552
+SHA256 (rust/crates/cargo-platform-0.1.9.crate) = e35af189006b9c0f00a064685c727031e3ed2d8020f7ba284d78cc2671bd36ea
+SIZE (rust/crates/cargo-platform-0.1.9.crate) = 12010
+SHA256 (rust/crates/cargo_metadata-0.19.2.crate) = dd5eb614ed4c27c5d706420e4320fbe3216ab31fa1c33cd8246ac36dae4479ba
+SIZE (rust/crates/cargo_metadata-0.19.2.crate) = 28370
+SHA256 (rust/crates/cc-1.2.23.crate) = 5f4ac86a9e5bc1e2b3449ab9d7d3a6a405e3d1bb28d7b9be8614f55846ae3766
+SIZE (rust/crates/cc-1.2.23.crate) = 106527
+SHA256 (rust/crates/cfg-if-1.0.3.crate) = 2fd1289c04a9ea8cb22300a459a72a385d7c73d3259e2ed7dcb2af674838cfa9
+SIZE (rust/crates/cfg-if-1.0.3.crate) = 8719
+SHA256 (rust/crates/cfg_aliases-0.2.1.crate) = 613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724
+SIZE (rust/crates/cfg_aliases-0.2.1.crate) = 6355
+SHA256 (rust/crates/clap-4.5.48.crate) = e2134bb3ea021b78629caa971416385309e0131b351b25e01dc16fb54e1b5fae
+SIZE (rust/crates/clap-4.5.48.crate) = 61935
+SHA256 (rust/crates/clap_builder-4.5.48.crate) = c2ba64afa3c0a6df7fa517765e31314e983f51dda798ffba27b988194fb65dc9
+SIZE (rust/crates/clap_builder-4.5.48.crate) = 170133
+SHA256 (rust/crates/clap_complete-4.5.58.crate) = 75bf0b32ad2e152de789bb635ea4d3078f6b838ad7974143e99b99f45a04af4a
+SIZE (rust/crates/clap_complete-4.5.58.crate) = 48645
+SHA256 (rust/crates/clap_derive-4.5.47.crate) = bbfd7eae0b0f1a6e63d4b13c9c478de77c2eb546fba158ad50b4203dc24b9f9c
+SIZE (rust/crates/clap_derive-4.5.47.crate) = 33550
+SHA256 (rust/crates/clap_lex-0.7.4.crate) = f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6
+SIZE (rust/crates/clap_lex-0.7.4.crate) = 12858
+SHA256 (rust/crates/colorchoice-1.0.3.crate) = 5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990
+SIZE (rust/crates/colorchoice-1.0.3.crate) = 7923
+SHA256 (rust/crates/colored-3.0.0.crate) = fde0e0ec90c9dfb3b4b1a0891a7dcd0e2bffde2f7efed5fe7c9bb00e5bfb915e
+SIZE (rust/crates/colored-3.0.0.crate) = 34497
+SHA256 (rust/crates/console-0.16.0.crate) = 2e09ced7ebbccb63b4c65413d821f2e00ce54c5ca4514ddc6b3c892fdbcbc69d
+SIZE (rust/crates/console-0.16.0.crate) = 39107
+SHA256 (rust/crates/cpufeatures-0.2.17.crate) = 59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280
+SIZE (rust/crates/cpufeatures-0.2.17.crate) = 13466
+SHA256 (rust/crates/crossbeam-channel-0.5.15.crate) = 82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2
+SIZE (rust/crates/crossbeam-channel-0.5.15.crate) = 92716
+SHA256 (rust/crates/crossbeam-deque-0.8.6.crate) = 9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51
+SIZE (rust/crates/crossbeam-deque-0.8.6.crate) = 22471
SHA256 (rust/crates/crossbeam-epoch-0.9.18.crate) = 5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e
SIZE (rust/crates/crossbeam-epoch-0.9.18.crate) = 46875
-SHA256 (rust/crates/crossbeam-utils-0.8.20.crate) = 22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80
-SIZE (rust/crates/crossbeam-utils-0.8.20.crate) = 42487
-SHA256 (rust/crates/darling-0.20.10.crate) = 6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989
-SIZE (rust/crates/darling-0.20.10.crate) = 32031
-SHA256 (rust/crates/darling_core-0.20.10.crate) = 95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5
-SIZE (rust/crates/darling_core-0.20.10.crate) = 65015
-SHA256 (rust/crates/darling_macro-0.20.10.crate) = d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806
-SIZE (rust/crates/darling_macro-0.20.10.crate) = 1874
-SHA256 (rust/crates/dashmap-6.0.1.crate) = 804c8821570c3f8b70230c2ba75ffa5c0f9a4189b9a432b6656c536712acae28
-SIZE (rust/crates/dashmap-6.0.1.crate) = 24364
-SHA256 (rust/crates/deranged-0.3.11.crate) = b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4
-SIZE (rust/crates/deranged-0.3.11.crate) = 18043
-SHA256 (rust/crates/derive_builder-0.20.0.crate) = 0350b5cb0331628a5916d6c5c0b72e97393b8b6b03b47a9284f4e7f5a405ffd7
-SIZE (rust/crates/derive_builder-0.20.0.crate) = 36563
-SHA256 (rust/crates/derive_builder_core-0.20.0.crate) = d48cda787f839151732d396ac69e3473923d54312c070ee21e9effcaa8ca0b1d
-SIZE (rust/crates/derive_builder_core-0.20.0.crate) = 32579
-SHA256 (rust/crates/derive_builder_macro-0.20.0.crate) = 206868b8242f27cecce124c19fd88157fbd0dd334df2587f36417bafbc85097b
-SIZE (rust/crates/derive_builder_macro-0.20.0.crate) = 6308
-SHA256 (rust/crates/either-1.13.0.crate) = 60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0
-SIZE (rust/crates/either-1.13.0.crate) = 19169
-SHA256 (rust/crates/encode_unicode-0.3.6.crate) = a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f
-SIZE (rust/crates/encode_unicode-0.3.6.crate) = 45741
-SHA256 (rust/crates/equivalent-1.0.1.crate) = 5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5
-SIZE (rust/crates/equivalent-1.0.1.crate) = 6615
-SHA256 (rust/crates/errno-0.3.9.crate) = 534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba
-SIZE (rust/crates/errno-0.3.9.crate) = 10690
-SHA256 (rust/crates/ffmpeg-sys-the-third-2.0.0+ffmpeg-7.0.crate) = a82bfdb0a7925996707f0a7dc37b2f3251ff5a15d26e78c586adb60c240dedc5
-SIZE (rust/crates/ffmpeg-sys-the-third-2.0.0+ffmpeg-7.0.crate) = 17325
-SHA256 (rust/crates/ffmpeg-the-third-2.0.1+ffmpeg-7.0.crate) = c4aa99eb55979d5c1db3b0b7a807a5e50dda07f5f6c2dbc6e9b50c205f611646
-SIZE (rust/crates/ffmpeg-the-third-2.0.1+ffmpeg-7.0.crate) = 93679
-SHA256 (rust/crates/flexi_logger-0.28.5.crate) = cca927478b3747ba47f98af6ba0ac0daea4f12d12f55e9104071b3dc00276310
-SIZE (rust/crates/flexi_logger-0.28.5.crate) = 223891
+SHA256 (rust/crates/crossbeam-utils-0.8.21.crate) = d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28
+SIZE (rust/crates/crossbeam-utils-0.8.21.crate) = 42691
+SHA256 (rust/crates/ctrlc-3.5.0.crate) = 881c5d0a13b2f1498e2306e82cbada78390e152d4b1378fb28a84f4dcd0dc4f3
+SIZE (rust/crates/ctrlc-3.5.0.crate) = 13886
+SHA256 (rust/crates/darling-0.20.11.crate) = fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee
+SIZE (rust/crates/darling-0.20.11.crate) = 37614
+SHA256 (rust/crates/darling_core-0.20.11.crate) = 0d00b9596d185e565c2207a0b01f8bd1a135483d02d9b7b0a54b11da8d53412e
+SIZE (rust/crates/darling_core-0.20.11.crate) = 68006
+SHA256 (rust/crates/darling_macro-0.20.11.crate) = fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead
+SIZE (rust/crates/darling_macro-0.20.11.crate) = 2532
+SHA256 (rust/crates/dashmap-6.1.0.crate) = 5041cc499144891f3790297212f32a74fb938e5136a14943f338ef9e0ae276cf
+SIZE (rust/crates/dashmap-6.1.0.crate) = 24828
+SHA256 (rust/crates/deranged-0.4.0.crate) = 9c9e6a11ca8224451684bc0d7d5a7adbf8f2fd6887261a1cfc3c0432f9d4068e
+SIZE (rust/crates/deranged-0.4.0.crate) = 23235
+SHA256 (rust/crates/derive_builder-0.20.2.crate) = 507dfb09ea8b7fa618fcf76e953f4f5e192547945816d5358edffe39f6f94947
+SIZE (rust/crates/derive_builder-0.20.2.crate) = 36661
+SHA256 (rust/crates/derive_builder_core-0.20.2.crate) = 2d5bcf7b024d6835cfb3d473887cd966994907effbe9227e8c8219824d06c4e8
+SIZE (rust/crates/derive_builder_core-0.20.2.crate) = 31397
+SHA256 (rust/crates/derive_builder_macro-0.20.2.crate) = ab63b0e2bf4d5928aff72e83a7dace85d7bba5fe12dcc3c5a572d78caffd3f3c
+SIZE (rust/crates/derive_builder_macro-0.20.2.crate) = 6360
+SHA256 (rust/crates/difflib-0.4.0.crate) = 6184e33543162437515c2e2b48714794e37845ec9851711914eec9d308f6ebe8
+SIZE (rust/crates/difflib-0.4.0.crate) = 7638
+SHA256 (rust/crates/dispatch-0.2.0.crate) = bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b
+SIZE (rust/crates/dispatch-0.2.0.crate) = 10229
+SHA256 (rust/crates/displaydoc-0.2.5.crate) = 97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0
+SIZE (rust/crates/displaydoc-0.2.5.crate) = 24219
+SHA256 (rust/crates/doc-comment-0.3.3.crate) = fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10
+SIZE (rust/crates/doc-comment-0.3.3.crate) = 4123
+SHA256 (rust/crates/either-1.15.0.crate) = 48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719
+SIZE (rust/crates/either-1.15.0.crate) = 20114
+SHA256 (rust/crates/encode_unicode-1.0.0.crate) = 34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0
+SIZE (rust/crates/encode_unicode-1.0.0.crate) = 56986
+SHA256 (rust/crates/env_home-0.1.0.crate) = c7f84e12ccf0a7ddc17a6c41c93326024c42920d7ee630d04950e6926645c0fe
+SIZE (rust/crates/env_home-0.1.0.crate) = 9006
+SHA256 (rust/crates/errno-0.3.12.crate) = cea14ef9355e3beab063703aa9dab15afd25f0667c341310c1e5274bb1d0da18
+SIZE (rust/crates/errno-0.3.12.crate) = 12423
+SHA256 (rust/crates/fastrand-2.3.0.crate) = 37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be
+SIZE (rust/crates/fastrand-2.3.0.crate) = 15076
SHA256 (rust/crates/fnv-1.0.7.crate) = 3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1
SIZE (rust/crates/fnv-1.0.7.crate) = 11266
SHA256 (rust/crates/form_urlencoded-1.2.1.crate) = e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456
SIZE (rust/crates/form_urlencoded-1.2.1.crate) = 8969
-SHA256 (rust/crates/getrandom-0.2.15.crate) = c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7
-SIZE (rust/crates/getrandom-0.2.15.crate) = 37163
-SHA256 (rust/crates/getset-0.1.2.crate) = e45727250e75cc04ff2846a66397da8ef2b3db8e40e0cef4df67950a07621eb9
-SIZE (rust/crates/getset-0.1.2.crate) = 8831
-SHA256 (rust/crates/gimli-0.29.0.crate) = 40ecd4077b5ae9fd2e9e169b102c6c330d0605168eb0e8bf79952b256dbefffd
-SIZE (rust/crates/gimli-0.29.0.crate) = 275756
-SHA256 (rust/crates/git2-0.19.0.crate) = b903b73e45dc0c6c596f2d37eccece7c1c8bb6e4407b001096387c63d0d93724
-SIZE (rust/crates/git2-0.19.0.crate) = 215910
-SHA256 (rust/crates/glob-0.3.1.crate) = d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b
-SIZE (rust/crates/glob-0.3.1.crate) = 18880
+SHA256 (rust/crates/futures-0.3.31.crate) = 65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876
+SIZE (rust/crates/futures-0.3.31.crate) = 54953
+SHA256 (rust/crates/futures-channel-0.3.31.crate) = 2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10
+SIZE (rust/crates/futures-channel-0.3.31.crate) = 31971
+SHA256 (rust/crates/futures-core-0.3.31.crate) = 05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e
+SIZE (rust/crates/futures-core-0.3.31.crate) = 14318
+SHA256 (rust/crates/futures-executor-0.3.31.crate) = 1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f
+SIZE (rust/crates/futures-executor-0.3.31.crate) = 17965
+SHA256 (rust/crates/futures-io-0.3.31.crate) = 9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6
+SIZE (rust/crates/futures-io-0.3.31.crate) = 9047
+SHA256 (rust/crates/futures-sink-0.3.31.crate) = e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7
+SIZE (rust/crates/futures-sink-0.3.31.crate) = 7958
+SHA256 (rust/crates/futures-task-0.3.31.crate) = f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988
+SIZE (rust/crates/futures-task-0.3.31.crate) = 11217
+SHA256 (rust/crates/futures-util-0.3.31.crate) = 9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81
+SIZE (rust/crates/futures-util-0.3.31.crate) = 162124
+SHA256 (rust/crates/getrandom-0.3.3.crate) = 26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4
+SIZE (rust/crates/getrandom-0.3.3.crate) = 49493
+SHA256 (rust/crates/git2-0.20.2.crate) = 2deb07a133b1520dc1a5690e9bd08950108873d7ed5de38dcc74d3b5ebffa110
+SIZE (rust/crates/git2-0.20.2.crate) = 223479
SHA256 (rust/crates/hashbrown-0.14.5.crate) = e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1
SIZE (rust/crates/hashbrown-0.14.5.crate) = 141498
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/home-0.5.9.crate) = e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5
-SIZE (rust/crates/home-0.5.9.crate) = 8760
-SHA256 (rust/crates/iana-time-zone-0.1.60.crate) = e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141
-SIZE (rust/crates/iana-time-zone-0.1.60.crate) = 27074
-SHA256 (rust/crates/iana-time-zone-haiku-0.1.2.crate) = f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f
-SIZE (rust/crates/iana-time-zone-haiku-0.1.2.crate) = 7185
+SHA256 (rust/crates/icu_collections-2.0.0.crate) = 200072f5d0e3614556f94a9930d5dc3e0662a652823904c3a75dc3b0af7fee47
+SIZE (rust/crates/icu_collections-2.0.0.crate) = 83033
+SHA256 (rust/crates/icu_locale_core-2.0.0.crate) = 0cde2700ccaed3872079a65fb1a78f6c0a36c91570f28755dda67bc8f7d9f00a
+SIZE (rust/crates/icu_locale_core-2.0.0.crate) = 74430
+SHA256 (rust/crates/icu_normalizer-2.0.0.crate) = 436880e8e18df4d7bbc06d58432329d6458cc84531f7ac5f024e93deadb37979
+SIZE (rust/crates/icu_normalizer-2.0.0.crate) = 61543
+SHA256 (rust/crates/icu_normalizer_data-2.0.0.crate) = 00210d6893afc98edb752b664b8890f0ef174c8adbb8d0be9710fa66fbbf72d3
+SIZE (rust/crates/icu_normalizer_data-2.0.0.crate) = 68101
+SHA256 (rust/crates/icu_properties-2.0.1.crate) = 016c619c1eeb94efb86809b015c58f479963de65bdb6253345c1a1276f22e32b
+SIZE (rust/crates/icu_properties-2.0.1.crate) = 58165
+SHA256 (rust/crates/icu_properties_data-2.0.1.crate) = 298459143998310acd25ffe6810ed544932242d3f07083eee1084d83a71bd632
+SIZE (rust/crates/icu_properties_data-2.0.1.crate) = 159735
+SHA256 (rust/crates/icu_provider-2.0.0.crate) = 03c80da27b5f4187909049ee2d72f276f0d9f99a42c306bd0131ecfe04d8e5af
+SIZE (rust/crates/icu_provider-2.0.0.crate) = 50966
SHA256 (rust/crates/ident_case-1.0.1.crate) = b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39
SIZE (rust/crates/ident_case-1.0.1.crate) = 3492
-SHA256 (rust/crates/idna-0.5.0.crate) = 634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6
-SIZE (rust/crates/idna-0.5.0.crate) = 271940
-SHA256 (rust/crates/indexmap-2.3.0.crate) = de3fc2e30ba82dd1b3911c8de1ffc143c74a914a14e99514d7637e3099df5ea0
-SIZE (rust/crates/indexmap-2.3.0.crate) = 83027
-SHA256 (rust/crates/indicatif-0.17.8.crate) = 763a5a8f45087d6bcea4222e7b72c291a054edf80e4ef6efd2a4979878c7bea3
-SIZE (rust/crates/indicatif-0.17.8.crate) = 64869
-SHA256 (rust/crates/instant-0.1.13.crate) = e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222
-SIZE (rust/crates/instant-0.1.13.crate) = 6305
-SHA256 (rust/crates/interpolate_name-0.2.4.crate) = c34819042dc3d3971c46c2190835914dfbe0c3c13f61449b2997f4e9722dfa60
-SIZE (rust/crates/interpolate_name-0.2.4.crate) = 4027
+SHA256 (rust/crates/idna-1.0.3.crate) = 686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e
+SIZE (rust/crates/idna-1.0.3.crate) = 142515
+SHA256 (rust/crates/idna_adapter-1.2.1.crate) = 3acae9609540aa318d1bc588455225fb2085b9ed0c4f6bd0d9d5bcd86f1a0344
+SIZE (rust/crates/idna_adapter-1.2.1.crate) = 10389
+SHA256 (rust/crates/indicatif-0.18.0.crate) = 70a646d946d06bedbbc4cac4c218acf4bbf2d87757a784857025f4d447e4e1cd
+SIZE (rust/crates/indicatif-0.18.0.crate) = 67969
SHA256 (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf
SIZE (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7492
-SHA256 (rust/crates/itertools-0.12.1.crate) = ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569
-SIZE (rust/crates/itertools-0.12.1.crate) = 137761
-SHA256 (rust/crates/itertools-0.13.0.crate) = 413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186
-SIZE (rust/crates/itertools-0.13.0.crate) = 146261
-SHA256 (rust/crates/itoa-1.0.11.crate) = 49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b
-SIZE (rust/crates/itoa-1.0.11.crate) = 10563
-SHA256 (rust/crates/jobserver-0.1.32.crate) = 48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0
-SIZE (rust/crates/jobserver-0.1.32.crate) = 27549
-SHA256 (rust/crates/js-sys-0.3.69.crate) = 29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d
-SIZE (rust/crates/js-sys-0.3.69.crate) = 81083
+SHA256 (rust/crates/itertools-0.14.0.crate) = 2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285
+SIZE (rust/crates/itertools-0.14.0.crate) = 152715
+SHA256 (rust/crates/itoa-1.0.15.crate) = 4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c
+SIZE (rust/crates/itoa-1.0.15.crate) = 11231
+SHA256 (rust/crates/jobserver-0.1.33.crate) = 38f262f097c174adebe41eb73d66ae9c06b2844fb0da69969647bbddd9b0538a
+SIZE (rust/crates/jobserver-0.1.33.crate) = 29136
+SHA256 (rust/crates/js-sys-0.3.77.crate) = 1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f
+SIZE (rust/crates/js-sys-0.3.77.crate) = 55538
SHA256 (rust/crates/lazy_static-1.5.0.crate) = bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe
SIZE (rust/crates/lazy_static-1.5.0.crate) = 14025
-SHA256 (rust/crates/lazycell-1.3.0.crate) = 830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55
-SIZE (rust/crates/lazycell-1.3.0.crate) = 12502
-SHA256 (rust/crates/libc-0.2.155.crate) = 97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c
-SIZE (rust/crates/libc-0.2.155.crate) = 743539
-SHA256 (rust/crates/libfuzzer-sys-0.4.7.crate) = a96cfd5557eb82f2b83fed4955246c988d331975a002961b07c81584d107e7f7
-SIZE (rust/crates/libfuzzer-sys-0.4.7.crate) = 128332
-SHA256 (rust/crates/libgit2-sys-0.17.0+1.8.1.crate) = 10472326a8a6477c3c20a64547b0059e4b0d086869eee31e6d7da728a8eb7224
-SIZE (rust/crates/libgit2-sys-0.17.0+1.8.1.crate) = 1812997
-SHA256 (rust/crates/libloading-0.8.5.crate) = 4979f22fdb869068da03c9f7528f8297c6fd2606bc3a4affe42e6a823fdb8da4
-SIZE (rust/crates/libloading-0.8.5.crate) = 28902
-SHA256 (rust/crates/libz-sys-1.1.18.crate) = c15da26e5af7e25c90b37a2d75cdbf940cf4a55316de9d84c679c9b8bfabf82e
-SIZE (rust/crates/libz-sys-1.1.18.crate) = 817891
-SHA256 (rust/crates/linux-raw-sys-0.4.14.crate) = 78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89
-SIZE (rust/crates/linux-raw-sys-0.4.14.crate) = 1826665
-SHA256 (rust/crates/lock_api-0.4.12.crate) = 07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17
-SIZE (rust/crates/lock_api-0.4.12.crate) = 27591
-SHA256 (rust/crates/log-0.4.22.crate) = a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24
-SIZE (rust/crates/log-0.4.22.crate) = 44027
+SHA256 (rust/crates/libc-0.2.174.crate) = 1171693293099992e19cddea4e8b849964e9846f4acee11b3948bcc337be8776
+SIZE (rust/crates/libc-0.2.174.crate) = 779933
+SHA256 (rust/crates/libgit2-sys-0.18.1+1.9.0.crate) = e1dcb20f84ffcdd825c7a311ae347cce604a6f084a767dec4a4929829645290e
+SIZE (rust/crates/libgit2-sys-0.18.1+1.9.0.crate) = 1855262
+SHA256 (rust/crates/libz-sys-1.1.22.crate) = 8b70e7a7df205e92a1a4cd9aaae7898dac0aa555503cc0a649494d0d60e7651d
+SIZE (rust/crates/libz-sys-1.1.22.crate) = 841053
+SHA256 (rust/crates/linux-raw-sys-0.9.4.crate) = cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12
+SIZE (rust/crates/linux-raw-sys-0.9.4.crate) = 2311088
+SHA256 (rust/crates/litemap-0.8.0.crate) = 241eaef5fd12c88705a01fc1066c48c4b36e0dd4377dcdc7ec3942cea7a69956
+SIZE (rust/crates/litemap-0.8.0.crate) = 34344
+SHA256 (rust/crates/lock_api-0.4.13.crate) = 96936507f153605bddfcda068dd804796c84324ed2510809e5b2a624c81da765
+SIZE (rust/crates/lock_api-0.4.13.crate) = 28565
+SHA256 (rust/crates/log-0.4.27.crate) = 13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94
+SIZE (rust/crates/log-0.4.27.crate) = 48120
SHA256 (rust/crates/matchers-0.1.0.crate) = 8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558
SIZE (rust/crates/matchers-0.1.0.crate) = 6948
-SHA256 (rust/crates/maybe-rayon-0.1.1.crate) = 8ea1f30cedd69f0a2954655f7188c6a834246d2bcf1e315e2ac40c4b24dc9519
-SIZE (rust/crates/maybe-rayon-0.1.1.crate) = 2901
-SHA256 (rust/crates/memchr-2.7.4.crate) = 78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3
-SIZE (rust/crates/memchr-2.7.4.crate) = 96670
+SHA256 (rust/crates/memchr-2.7.6.crate) = f52b00d39961fc5b2736ea853c9cc86238e165017a493d1d5c8eac6bdc4cc273
+SIZE (rust/crates/memchr-2.7.6.crate) = 97616
SHA256 (rust/crates/minimal-lexical-0.2.1.crate) = 68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a
SIZE (rust/crates/minimal-lexical-0.2.1.crate) = 94841
-SHA256 (rust/crates/miniz_oxide-0.7.4.crate) = b8a240ddb74feaf34a79a7add65a741f3167852fba007066dcac1ca548d89c08
-SIZE (rust/crates/miniz_oxide-0.7.4.crate) = 56119
-SHA256 (rust/crates/mio-1.0.1.crate) = 4569e456d394deccd22ce1c1913e6ea0e54519f577285001215d33557431afe4
-SIZE (rust/crates/mio-1.0.1.crate) = 102654
-SHA256 (rust/crates/nasm-rs-0.2.5.crate) = fe4d98d0065f4b1daf164b3eafb11974c94662e5e2396cf03f32d0bb5c17da51
-SIZE (rust/crates/nasm-rs-0.2.5.crate) = 9920
-SHA256 (rust/crates/new_debug_unreachable-1.0.6.crate) = 650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086
-SIZE (rust/crates/new_debug_unreachable-1.0.6.crate) = 2582
+SHA256 (rust/crates/nasm-rs-0.3.0.crate) = 12fcfa1bd49e0342ec1d07ed2be83b59963e7acbeb9310e1bb2c07b69dadd959
+SIZE (rust/crates/nasm-rs-0.3.0.crate) = 10700
+SHA256 (rust/crates/nix-0.30.1.crate) = 74523f3a35e05aba87a1d978330aef40f67b0304ac79c1c00b294c9830543db6
+SIZE (rust/crates/nix-0.30.1.crate) = 342015
SHA256 (rust/crates/nom-7.1.3.crate) = d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a
SIZE (rust/crates/nom-7.1.3.crate) = 117570
-SHA256 (rust/crates/noop_proc_macro-0.3.0.crate) = 0676bb32a98c1a483ce53e500a81ad9c3d5b3f7c920c28c24e9cb0980d0b5bc8
-SIZE (rust/crates/noop_proc_macro-0.3.0.crate) = 2157
+SHA256 (rust/crates/nom-8.0.0.crate) = df9761775871bdef83bee530e60050f7e54b1105350d6884eb0fb4f46c2f9405
+SIZE (rust/crates/nom-8.0.0.crate) = 135590
SHA256 (rust/crates/ntapi-0.4.1.crate) = e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4
SIZE (rust/crates/ntapi-0.4.1.crate) = 126552
SHA256 (rust/crates/nu-ansi-term-0.46.0.crate) = 77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84
SIZE (rust/crates/nu-ansi-term-0.46.0.crate) = 24311
-SHA256 (rust/crates/nu-ansi-term-0.50.1.crate) = d4a28e057d01f97e61255210fcff094d74ed0466038633e95017f5beb68e4399
-SIZE (rust/crates/nu-ansi-term-0.50.1.crate) = 28536
SHA256 (rust/crates/num-bigint-0.4.6.crate) = a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9
SIZE (rust/crates/num-bigint-0.4.6.crate) = 102801
SHA256 (rust/crates/num-conv-0.1.0.crate) = 51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9
@@ -249,170 +239,160 @@ SHA256 (rust/crates/num_cpus-1.16.0.crate) = 4161fcb6d602d4d2081af7c3a45852d875a
SIZE (rust/crates/num_cpus-1.16.0.crate) = 15713
SHA256 (rust/crates/num_threads-0.1.7.crate) = 5c7398b9c8b70908f6371f47ed36737907c87c52af34c268fed0bf0ceb92ead9
SIZE (rust/crates/num_threads-0.1.7.crate) = 7455
-SHA256 (rust/crates/number_prefix-0.4.0.crate) = 830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3
-SIZE (rust/crates/number_prefix-0.4.0.crate) = 6922
-SHA256 (rust/crates/object-0.36.3.crate) = 27b64972346851a39438c60b341ebc01bba47464ae329e55cf343eb93964efd9
-SIZE (rust/crates/object-0.36.3.crate) = 325288
-SHA256 (rust/crates/once_cell-1.19.0.crate) = 3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92
-SIZE (rust/crates/once_cell-1.19.0.crate) = 33046
+SHA256 (rust/crates/objc2-core-foundation-0.3.1.crate) = 1c10c2894a6fed806ade6027bcd50662746363a9589d3ec9d9bef30a4e4bc166
+SIZE (rust/crates/objc2-core-foundation-0.3.1.crate) = 178121
+SHA256 (rust/crates/objc2-io-kit-0.3.1.crate) = 71c1c64d6120e51cd86033f67176b1cb66780c2efe34dec55176f77befd93c0a
+SIZE (rust/crates/objc2-io-kit-0.3.1.crate) = 220419
+SHA256 (rust/crates/once_cell-1.21.3.crate) = 42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d
+SIZE (rust/crates/once_cell-1.21.3.crate) = 34534
SHA256 (rust/crates/overload-0.1.1.crate) = b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39
SIZE (rust/crates/overload-0.1.1.crate) = 24439
-SHA256 (rust/crates/parking_lot-0.12.3.crate) = f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27
-SIZE (rust/crates/parking_lot-0.12.3.crate) = 41860
-SHA256 (rust/crates/parking_lot_core-0.9.10.crate) = 1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8
-SIZE (rust/crates/parking_lot_core-0.9.10.crate) = 32406
-SHA256 (rust/crates/paste-1.0.15.crate) = 57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a
-SIZE (rust/crates/paste-1.0.15.crate) = 18374
+SHA256 (rust/crates/parking_lot-0.12.4.crate) = 70d58bf43669b5795d1576d0641cfb6fbb2057bf629506267a92807158584a13
+SIZE (rust/crates/parking_lot-0.12.4.crate) = 46779
+SHA256 (rust/crates/parking_lot_core-0.9.11.crate) = bc838d2a56b5b1a6c25f55575dfc605fabb63bb2365f6c2353ef9159aa69e4a5
+SIZE (rust/crates/parking_lot_core-0.9.11.crate) = 34773
+SHA256 (rust/crates/pastey-0.1.1.crate) = 35fb2e5f958ec131621fdd531e9fc186ed768cbe395337403ae56c17a74c68ec
+SIZE (rust/crates/pastey-0.1.1.crate) = 16112
SHA256 (rust/crates/path_abs-0.5.1.crate) = 05ef02f6342ac01d8a93b65f96db53fe68a92a15f41144f97fb00a9e669633c3
SIZE (rust/crates/path_abs-0.5.1.crate) = 31072
SHA256 (rust/crates/percent-encoding-2.3.1.crate) = e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e
SIZE (rust/crates/percent-encoding-2.3.1.crate) = 10235
-SHA256 (rust/crates/pin-project-lite-0.2.14.crate) = bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02
-SIZE (rust/crates/pin-project-lite-0.2.14.crate) = 28817
-SHA256 (rust/crates/pkg-config-0.3.30.crate) = d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec
-SIZE (rust/crates/pkg-config-0.3.30.crate) = 20613
-SHA256 (rust/crates/plotters-0.3.6.crate) = a15b6eccb8484002195a3e44fe65a4ce8e93a625797a063735536fd59cb01cf3
-SIZE (rust/crates/plotters-0.3.6.crate) = 147577
-SHA256 (rust/crates/plotters-backend-0.3.6.crate) = 414cec62c6634ae900ea1c56128dfe87cf63e7caece0852ec76aba307cebadb7
-SIZE (rust/crates/plotters-backend-0.3.6.crate) = 13669
-SHA256 (rust/crates/plotters-svg-0.3.6.crate) = 81b30686a7d9c3e010b84284bdd26a29f2138574f52f5eb6f794fc0ad924e705
-SIZE (rust/crates/plotters-svg-0.3.6.crate) = 6944
-SHA256 (rust/crates/portable-atomic-1.7.0.crate) = da544ee218f0d287a911e9c99a39a8c9bc8fcad3cb8db5959940044ecfc67265
-SIZE (rust/crates/portable-atomic-1.7.0.crate) = 145385
+SHA256 (rust/crates/pin-project-lite-0.2.16.crate) = 3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b
+SIZE (rust/crates/pin-project-lite-0.2.16.crate) = 30504
+SHA256 (rust/crates/pin-utils-0.1.0.crate) = 8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184
+SIZE (rust/crates/pin-utils-0.1.0.crate) = 7580
+SHA256 (rust/crates/pkg-config-0.3.32.crate) = 7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c
+SIZE (rust/crates/pkg-config-0.3.32.crate) = 21370
+SHA256 (rust/crates/plotters-0.3.7.crate) = 5aeb6f403d7a4911efb1e33402027fc44f29b5bf6def3effcc22d7bb75f2b747
+SIZE (rust/crates/plotters-0.3.7.crate) = 149031
+SHA256 (rust/crates/plotters-backend-0.3.7.crate) = df42e13c12958a16b3f7f4386b9ab1f3e7933914ecea48da7139435263a4172a
+SIZE (rust/crates/plotters-backend-0.3.7.crate) = 13709
+SHA256 (rust/crates/plotters-svg-0.3.7.crate) = 51bae2ac328883f7acdfea3d66a7c35751187f870bc81f94563733a154d7a670
+SIZE (rust/crates/plotters-svg-0.3.7.crate) = 6715
+SHA256 (rust/crates/portable-atomic-1.11.0.crate) = 350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e
+SIZE (rust/crates/portable-atomic-1.11.0.crate) = 181258
+SHA256 (rust/crates/potential_utf-0.1.2.crate) = e5a7c30837279ca13e7c867e9e40053bc68740f988cb07f7ca6df43cc734b585
+SIZE (rust/crates/potential_utf-0.1.2.crate) = 9613
SHA256 (rust/crates/powerfmt-0.2.0.crate) = 439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391
SIZE (rust/crates/powerfmt-0.2.0.crate) = 15165
-SHA256 (rust/crates/ppv-lite86-0.2.20.crate) = 77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04
-SIZE (rust/crates/ppv-lite86-0.2.20.crate) = 22478
-SHA256 (rust/crates/proc-macro-error-1.0.4.crate) = da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c
-SIZE (rust/crates/proc-macro-error-1.0.4.crate) = 25293
-SHA256 (rust/crates/proc-macro-error-attr-1.0.4.crate) = a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869
-SIZE (rust/crates/proc-macro-error-attr-1.0.4.crate) = 7971
-SHA256 (rust/crates/proc-macro2-1.0.86.crate) = 5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77
-SIZE (rust/crates/proc-macro2-1.0.86.crate) = 48958
-SHA256 (rust/crates/profiling-1.0.15.crate) = 43d84d1d7a6ac92673717f9f6d1518374ef257669c24ebc5ac25d5033828be58
-SIZE (rust/crates/profiling-1.0.15.crate) = 14255
-SHA256 (rust/crates/profiling-procmacros-1.0.15.crate) = 8021cf59c8ec9c432cfc2526ac6b8aa508ecaf29cd415f271b8406c1b851c3fd
-SIZE (rust/crates/profiling-procmacros-1.0.15.crate) = 5956
-SHA256 (rust/crates/quickcheck-1.0.3.crate) = 588f6378e4dd99458b60ec275b4477add41ce4fa9f64dcba6f15adccb19b50d6
-SIZE (rust/crates/quickcheck-1.0.3.crate) = 28069
-SHA256 (rust/crates/quickcheck_macros-1.0.0.crate) = b22a693222d716a9587786f37ac3f6b4faedb5b80c23914e7303ff5a1d8016e9
-SIZE (rust/crates/quickcheck_macros-1.0.0.crate) = 5275
-SHA256 (rust/crates/quote-1.0.36.crate) = 0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7
-SIZE (rust/crates/quote-1.0.36.crate) = 28507
-SHA256 (rust/crates/rand-0.8.5.crate) = 34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404
-SIZE (rust/crates/rand-0.8.5.crate) = 87113
-SHA256 (rust/crates/rand_chacha-0.3.1.crate) = e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88
-SIZE (rust/crates/rand_chacha-0.3.1.crate) = 15251
-SHA256 (rust/crates/rand_core-0.6.4.crate) = ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c
-SIZE (rust/crates/rand_core-0.6.4.crate) = 22666
-SHA256 (rust/crates/rav1e-0.7.1.crate) = cd87ce80a7665b1cce111f8a16c1f3929f6547ce91ade6addf4ec86a8dda5ce9
-SIZE (rust/crates/rav1e-0.7.1.crate) = 1472522
+SHA256 (rust/crates/ppv-lite86-0.2.21.crate) = 85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9
+SIZE (rust/crates/ppv-lite86-0.2.21.crate) = 22522
+SHA256 (rust/crates/predicates-3.1.3.crate) = a5d19ee57562043d37e82899fade9a22ebab7be9cef5026b07fda9cdd4293573
+SIZE (rust/crates/predicates-3.1.3.crate) = 24063
+SHA256 (rust/crates/predicates-core-1.0.9.crate) = 727e462b119fe9c93fd0eb1429a5f7647394014cf3c04ab2c0350eeb09095ffa
+SIZE (rust/crates/predicates-core-1.0.9.crate) = 8618
+SHA256 (rust/crates/predicates-tree-1.0.12.crate) = 72dd2d6d381dfb73a193c7fca536518d7caee39fc8503f74e7dc0be0531b425c
+SIZE (rust/crates/predicates-tree-1.0.12.crate) = 8392
+SHA256 (rust/crates/proc-macro2-1.0.95.crate) = 02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778
+SIZE (rust/crates/proc-macro2-1.0.95.crate) = 51820
+SHA256 (rust/crates/quote-1.0.40.crate) = 1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d
+SIZE (rust/crates/quote-1.0.40.crate) = 31063
+SHA256 (rust/crates/r-efi-5.2.0.crate) = 74765f6d916ee2faa39bc8e68e4f3ed8949b48cccdac59983d287a7cb71ce9c5
+SIZE (rust/crates/r-efi-5.2.0.crate) = 64764
+SHA256 (rust/crates/rand-0.9.2.crate) = 6db2770f06117d490610c7488547d543617b21bfa07796d7a12f6f1bd53850d1
+SIZE (rust/crates/rand-0.9.2.crate) = 99930
+SHA256 (rust/crates/rand_chacha-0.9.0.crate) = d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb
+SIZE (rust/crates/rand_chacha-0.9.0.crate) = 18258
+SHA256 (rust/crates/rand_core-0.9.3.crate) = 99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38
+SIZE (rust/crates/rand_core-0.9.3.crate) = 24543
SHA256 (rust/crates/rayon-1.10.0.crate) = b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa
SIZE (rust/crates/rayon-1.10.0.crate) = 180155
SHA256 (rust/crates/rayon-core-1.12.1.crate) = 1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2
SIZE (rust/crates/rayon-core-1.12.1.crate) = 70701
-SHA256 (rust/crates/redox_syscall-0.5.3.crate) = 2a908a6e00f1fdd0dfd9c0eb08ce85126f6d8bbda50017e74bc4a4b7d4a926a4
-SIZE (rust/crates/redox_syscall-0.5.3.crate) = 23830
-SHA256 (rust/crates/regex-1.10.6.crate) = 4219d74c6b67a3654a9fbebc4b419e22126d13d2f3c4a07ee0cb61ff79a79619
-SIZE (rust/crates/regex-1.10.6.crate) = 253894
+SHA256 (rust/crates/redox_syscall-0.5.12.crate) = 928fca9cf2aa042393a8325b9ead81d2f0df4cb12e1e24cef072922ccd99c5af
+SIZE (rust/crates/redox_syscall-0.5.12.crate) = 29544
+SHA256 (rust/crates/regex-1.11.3.crate) = 8b5288124840bee7b386bc413c487869b360b2b4ec421ea56425128692f2a82c
+SIZE (rust/crates/regex-1.11.3.crate) = 163275
SHA256 (rust/crates/regex-automata-0.1.10.crate) = 6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132
SIZE (rust/crates/regex-automata-0.1.10.crate) = 114533
-SHA256 (rust/crates/regex-automata-0.4.7.crate) = 38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df
-SIZE (rust/crates/regex-automata-0.4.7.crate) = 617582
+SHA256 (rust/crates/regex-automata-0.4.11.crate) = 833eb9ce86d40ef33cb1306d8accf7bc8ec2bfea4355cbdebb3df68b40925cad
+SIZE (rust/crates/regex-automata-0.4.11.crate) = 622880
SHA256 (rust/crates/regex-syntax-0.6.29.crate) = f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1
SIZE (rust/crates/regex-syntax-0.6.29.crate) = 299752
-SHA256 (rust/crates/regex-syntax-0.8.4.crate) = 7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b
-SIZE (rust/crates/regex-syntax-0.8.4.crate) = 347577
-SHA256 (rust/crates/rustc-demangle-0.1.24.crate) = 719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f
-SIZE (rust/crates/rustc-demangle-0.1.24.crate) = 29047
-SHA256 (rust/crates/rustc-hash-1.1.0.crate) = 08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2
-SIZE (rust/crates/rustc-hash-1.1.0.crate) = 9331
-SHA256 (rust/crates/rustc_version-0.4.0.crate) = bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366
-SIZE (rust/crates/rustc_version-0.4.0.crate) = 12175
-SHA256 (rust/crates/rustix-0.38.34.crate) = 70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f
-SIZE (rust/crates/rustix-0.38.34.crate) = 365160
-SHA256 (rust/crates/rustversion-1.0.17.crate) = 955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6
-SIZE (rust/crates/rustversion-1.0.17.crate) = 17621
-SHA256 (rust/crates/ryu-1.0.18.crate) = f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f
-SIZE (rust/crates/ryu-1.0.18.crate) = 47713
+SHA256 (rust/crates/regex-syntax-0.8.5.crate) = 2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c
+SIZE (rust/crates/regex-syntax-0.8.5.crate) = 357541
+SHA256 (rust/crates/rustc_version-0.4.1.crate) = cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92
+SIZE (rust/crates/rustc_version-0.4.1.crate) = 12245
+SHA256 (rust/crates/rustix-1.0.7.crate) = c71e83d6afe7ff64890ec6b71d6a69bb8a610ab78ce364b3352876bb4c801266
+SIZE (rust/crates/rustix-1.0.7.crate) = 414500
+SHA256 (rust/crates/rustversion-1.0.20.crate) = eded382c5f5f786b989652c49544c4877d9f015cc22e145a5ea8ea66c2921cd2
+SIZE (rust/crates/rustversion-1.0.20.crate) = 20666
+SHA256 (rust/crates/ryu-1.0.20.crate) = 28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f
+SIZE (rust/crates/ryu-1.0.20.crate) = 48738
+SHA256 (rust/crates/scc-2.3.4.crate) = 22b2d775fb28f245817589471dd49c5edf64237f4a19d10ce9a92ff4651a27f4
+SIZE (rust/crates/scc-2.3.4.crate) = 143387
SHA256 (rust/crates/scopeguard-1.2.0.crate) = 94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49
SIZE (rust/crates/scopeguard-1.2.0.crate) = 11619
-SHA256 (rust/crates/semver-1.0.23.crate) = 61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b
-SIZE (rust/crates/semver-1.0.23.crate) = 30622
-SHA256 (rust/crates/serde-1.0.205.crate) = e33aedb1a7135da52b7c21791455563facbbcc43d0f0f66165b42c21b3dfb150
-SIZE (rust/crates/serde-1.0.205.crate) = 78248
-SHA256 (rust/crates/serde_derive-1.0.205.crate) = 692d6f5ac90220161d6774db30c662202721e64aed9058d2c394f451261420c1
-SIZE (rust/crates/serde_derive-1.0.205.crate) = 55886
-SHA256 (rust/crates/serde_json-1.0.122.crate) = 784b6203951c57ff748476b126ccb5e8e2959a5c19e5c617ab1956be3dbc68da
-SIZE (rust/crates/serde_json-1.0.122.crate) = 147200
-SHA256 (rust/crates/serde_spanned-0.6.7.crate) = eb5b1b31579f3811bf615c144393417496f152e12ac8b7663bf664f4a815306d
-SIZE (rust/crates/serde_spanned-0.6.7.crate) = 9164
+SHA256 (rust/crates/sdd-3.0.9.crate) = 62f5557d2bbddd5afd236ba7856b0e494f5acc7ce805bb0774cc5674b20a06b4
+SIZE (rust/crates/sdd-3.0.9.crate) = 32613
+SHA256 (rust/crates/semver-1.0.26.crate) = 56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0
+SIZE (rust/crates/semver-1.0.26.crate) = 31303
+SHA256 (rust/crates/serde-1.0.228.crate) = 9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e
+SIZE (rust/crates/serde-1.0.228.crate) = 83652
+SHA256 (rust/crates/serde_core-1.0.228.crate) = 41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad
+SIZE (rust/crates/serde_core-1.0.228.crate) = 63111
+SHA256 (rust/crates/serde_derive-1.0.228.crate) = d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79
+SIZE (rust/crates/serde_derive-1.0.228.crate) = 59605
+SHA256 (rust/crates/serde_json-1.0.145.crate) = 402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c
+SIZE (rust/crates/serde_json-1.0.145.crate) = 155748
+SHA256 (rust/crates/serial_test-3.2.0.crate) = 1b258109f244e1d6891bf1053a55d63a5cd4f8f4c30cf9a1280989f80e7a1fa9
+SIZE (rust/crates/serial_test-3.2.0.crate) = 9232
+SHA256 (rust/crates/serial_test_derive-3.2.0.crate) = 5d69265a08751de7844521fd15003ae0a888e035773ba05695c5c759a6f89eef
+SIZE (rust/crates/serial_test_derive-3.2.0.crate) = 6992
SHA256 (rust/crates/sharded-slab-0.1.7.crate) = f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6
SIZE (rust/crates/sharded-slab-0.1.7.crate) = 58227
SHA256 (rust/crates/shlex-1.3.0.crate) = 0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64
SIZE (rust/crates/shlex-1.3.0.crate) = 18713
-SHA256 (rust/crates/signal-hook-registry-1.4.2.crate) = a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1
-SIZE (rust/crates/signal-hook-registry-1.4.2.crate) = 18064
-SHA256 (rust/crates/simd_helpers-0.1.0.crate) = 95890f873bec569a0362c235787f3aca6e1e887302ba4840839bcc6459c42da6
-SIZE (rust/crates/simd_helpers-0.1.0.crate) = 1527
-SHA256 (rust/crates/simdutf8-0.1.4.crate) = f27f6278552951f1f2b8cf9da965d10969b2efdea95a6ec47987ab46edfe263a
-SIZE (rust/crates/simdutf8-0.1.4.crate) = 28621
-SHA256 (rust/crates/smallvec-1.13.2.crate) = 3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67
-SIZE (rust/crates/smallvec-1.13.2.crate) = 35216
+SHA256 (rust/crates/simdutf8-0.1.5.crate) = e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e
+SIZE (rust/crates/simdutf8-0.1.5.crate) = 28488
+SHA256 (rust/crates/slab-0.4.11.crate) = 7a2ae44ef20feb57a68b23d846850f861394c2e02dc425a50098ae8c90267589
+SIZE (rust/crates/slab-0.4.11.crate) = 18549
+SHA256 (rust/crates/smallvec-1.15.1.crate) = 67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03
+SIZE (rust/crates/smallvec-1.15.1.crate) = 38116
SHA256 (rust/crates/smawk-0.3.2.crate) = b7c388c1b5e93756d0c740965c41e8822f866621d41acbdf6336a6a168f8840c
SIZE (rust/crates/smawk-0.3.2.crate) = 13831
-SHA256 (rust/crates/socket2-0.5.7.crate) = ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c
-SIZE (rust/crates/socket2-0.5.7.crate) = 55758
-SHA256 (rust/crates/splines-4.3.1.crate) = 228c4551e53c672e86439509545dd7ffcb966b6876c58b108e433a30e6117101
-SIZE (rust/crates/splines-4.3.1.crate) = 17797
+SHA256 (rust/crates/stable_deref_trait-1.2.0.crate) = a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3
+SIZE (rust/crates/stable_deref_trait-1.2.0.crate) = 8054
SHA256 (rust/crates/std_prelude-0.2.12.crate) = 8207e78455ffdf55661170876f88daf85356e4edd54e0a3dbc79586ca1e50cbe
SIZE (rust/crates/std_prelude-0.2.12.crate) = 5066
SHA256 (rust/crates/stfu8-0.2.7.crate) = e51f1e89f093f99e7432c491c382b88a6860a5adbe6bf02574bf0a08efff1978
SIZE (rust/crates/stfu8-0.2.7.crate) = 42753
SHA256 (rust/crates/strsim-0.11.1.crate) = 7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f
SIZE (rust/crates/strsim-0.11.1.crate) = 14266
-SHA256 (rust/crates/strum-0.26.3.crate) = 8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06
-SIZE (rust/crates/strum-0.26.3.crate) = 7237
-SHA256 (rust/crates/strum_macros-0.26.4.crate) = 4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be
-SIZE (rust/crates/strum_macros-0.26.4.crate) = 27531
-SHA256 (rust/crates/syn-1.0.109.crate) = 72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237
-SIZE (rust/crates/syn-1.0.109.crate) = 237611
-SHA256 (rust/crates/syn-2.0.72.crate) = dc4b9b9bf2add8093d3f2c0204471e951b2285580335de42f9d2534f3ae7a8af
-SIZE (rust/crates/syn-2.0.72.crate) = 267069
-SHA256 (rust/crates/sysinfo-0.31.2.crate) = d4115055da5f572fff541dd0c4e61b0262977f453cc9fe04be83aba25a89bdab
-SIZE (rust/crates/sysinfo-0.31.2.crate) = 182000
-SHA256 (rust/crates/system-deps-6.2.2.crate) = a3e535eb8dded36d55ec13eddacd30dec501792ff23a0b1682c38601b8cf2349
-SIZE (rust/crates/system-deps-6.2.2.crate) = 25546
-SHA256 (rust/crates/target-lexicon-0.12.16.crate) = 61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1
-SIZE (rust/crates/target-lexicon-0.12.16.crate) = 26488
-SHA256 (rust/crates/textwrap-0.16.1.crate) = 23d434d3f8967a09480fb04132ebe0a3e088c173e6d0ee7897abbdf4eab0f8b9
-SIZE (rust/crates/textwrap-0.16.1.crate) = 56012
-SHA256 (rust/crates/thiserror-1.0.63.crate) = c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724
-SIZE (rust/crates/thiserror-1.0.63.crate) = 21537
-SHA256 (rust/crates/thiserror-impl-1.0.63.crate) = a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261
-SIZE (rust/crates/thiserror-impl-1.0.63.crate) = 16047
-SHA256 (rust/crates/thread_local-1.1.8.crate) = 8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c
-SIZE (rust/crates/thread_local-1.1.8.crate) = 13962
-SHA256 (rust/crates/time-0.3.36.crate) = 5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885
-SIZE (rust/crates/time-0.3.36.crate) = 119805
-SHA256 (rust/crates/time-core-0.1.2.crate) = ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3
-SIZE (rust/crates/time-core-0.1.2.crate) = 7191
-SHA256 (rust/crates/time-macros-0.2.18.crate) = 3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf
-SIZE (rust/crates/time-macros-0.2.18.crate) = 24361
-SHA256 (rust/crates/tinyvec-1.8.0.crate) = 445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938
-SIZE (rust/crates/tinyvec-1.8.0.crate) = 46796
-SHA256 (rust/crates/tinyvec_macros-0.1.1.crate) = 1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20
-SIZE (rust/crates/tinyvec_macros-0.1.1.crate) = 5865
-SHA256 (rust/crates/tokio-1.39.2.crate) = daa4fb1bc778bd6f04cbfc4bb2d06a7396a8f299dc33ea1900cedaa316f467b1
-SIZE (rust/crates/tokio-1.39.2.crate) = 780859
-SHA256 (rust/crates/tokio-macros-2.4.0.crate) = 693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752
-SIZE (rust/crates/tokio-macros-2.4.0.crate) = 12501
-SHA256 (rust/crates/toml-0.8.19.crate) = a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e
-SIZE (rust/crates/toml-0.8.19.crate) = 50974
-SHA256 (rust/crates/toml_datetime-0.6.8.crate) = 0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41
-SIZE (rust/crates/toml_datetime-0.6.8.crate) = 12028
-SHA256 (rust/crates/toml_edit-0.22.20.crate) = 583c44c02ad26b0c3f3066fe629275e50627026c51ac2e595cca4c230ce1ce1d
-SIZE (rust/crates/toml_edit-0.22.20.crate) = 106726
+SHA256 (rust/crates/strum-0.27.2.crate) = af23d6f6c1a224baef9d3f61e287d2761385a5b88fdab4eb4c6f11aeb54c4bcf
+SIZE (rust/crates/strum-0.27.2.crate) = 8489
+SHA256 (rust/crates/strum_macros-0.27.1.crate) = c77a8c5abcaf0f9ce05d62342b7d298c346515365c36b673df4ebe3ced01fde8
+SIZE (rust/crates/strum_macros-0.27.1.crate) = 29670
+SHA256 (rust/crates/syn-2.0.101.crate) = 8ce2b7fc941b3a24138a0a7cf8e858bfc6a992e7978a068a5c760deb0ed43caf
+SIZE (rust/crates/syn-2.0.101.crate) = 299250
+SHA256 (rust/crates/synstructure-0.13.2.crate) = 728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2
+SIZE (rust/crates/synstructure-0.13.2.crate) = 18950
+SHA256 (rust/crates/sysinfo-0.36.1.crate) = 252800745060e7b9ffb7b2badbd8b31cfa4aa2e61af879d0a3bf2a317c20217d
+SIZE (rust/crates/sysinfo-0.36.1.crate) = 213643
+SHA256 (rust/crates/tempfile-3.23.0.crate) = 2d31c77bdf42a745371d260a26ca7163f1e0924b64afa0b688e61b5a9fa02f16
+SIZE (rust/crates/tempfile-3.23.0.crate) = 43063
+SHA256 (rust/crates/termtree-0.5.1.crate) = 8f50febec83f5ee1df3015341d8bd429f2d1cc62bcba7ea2076759d315084683
+SIZE (rust/crates/termtree-0.5.1.crate) = 8498
+SHA256 (rust/crates/textwrap-0.16.2.crate) = c13547615a44dc9c452a8a534638acdf07120d4b6847c8178705da06306a3057
+SIZE (rust/crates/textwrap-0.16.2.crate) = 57077
+SHA256 (rust/crates/thiserror-1.0.69.crate) = b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52
+SIZE (rust/crates/thiserror-1.0.69.crate) = 22198
+SHA256 (rust/crates/thiserror-2.0.17.crate) = f63587ca0f12b72a0600bcba1d40081f830876000bb46dd2337a3051618f4fc8
+SIZE (rust/crates/thiserror-2.0.17.crate) = 28857
+SHA256 (rust/crates/thiserror-impl-1.0.69.crate) = 4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1
+SIZE (rust/crates/thiserror-impl-1.0.69.crate) = 18365
+SHA256 (rust/crates/thiserror-impl-2.0.17.crate) = 3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913
+SIZE (rust/crates/thiserror-impl-2.0.17.crate) = 21344
+SHA256 (rust/crates/thread_local-1.1.9.crate) = f60246a4944f24f6e018aa17cdeffb7818b76356965d03b07d6a9886e8962185
+SIZE (rust/crates/thread_local-1.1.9.crate) = 19315
+SHA256 (rust/crates/time-0.3.41.crate) = 8a7619e19bc266e0f9c5e6686659d394bc57973859340060a69221e57dbc0c40
+SIZE (rust/crates/time-0.3.41.crate) = 138369
+SHA256 (rust/crates/time-core-0.1.4.crate) = c9e9a38711f559d9e3ce1cdb06dd7c5b8ea546bc90052da6d06bb76da74bb07c
+SIZE (rust/crates/time-core-0.1.4.crate) = 8422
+SHA256 (rust/crates/time-macros-0.2.22.crate) = 3526739392ec93fd8b359c8e98514cb3e8e021beb4e5f597b00a0221f8ed8a49
+SIZE (rust/crates/time-macros-0.2.22.crate) = 24604
+SHA256 (rust/crates/tinystr-0.8.1.crate) = 5d4f6d1145dcb577acf783d4e601bc1d76a13337bb54e6233add580b07344c8b
+SIZE (rust/crates/tinystr-0.8.1.crate) = 23333
SHA256 (rust/crates/tracing-0.1.41.crate) = 784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0
SIZE (rust/crates/tracing-0.1.41.crate) = 82448
SHA256 (rust/crates/tracing-appender-0.2.3.crate) = 3566e8ce28cc0a3fe42519fc80e6b4c943cc4c8cef275620eb8dac2d3d4e06cf
@@ -425,103 +405,153 @@ SHA256 (rust/crates/tracing-log-0.2.0.crate) = ee855f1f400bd0e5c02d150ae5de38400
SIZE (rust/crates/tracing-log-0.2.0.crate) = 17561
SHA256 (rust/crates/tracing-subscriber-0.3.19.crate) = e8189decb5ac0fa7bc8b96b7cb9b2701d60d48805aca84a238004d665fcc4008
SIZE (rust/crates/tracing-subscriber-0.3.19.crate) = 198345
-SHA256 (rust/crates/unicode-bidi-0.3.15.crate) = 08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75
-SIZE (rust/crates/unicode-bidi-0.3.15.crate) = 56811
-SHA256 (rust/crates/unicode-ident-1.0.12.crate) = 3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b
-SIZE (rust/crates/unicode-ident-1.0.12.crate) = 42168
+SHA256 (rust/crates/unicode-ident-1.0.18.crate) = 5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512
+SIZE (rust/crates/unicode-ident-1.0.18.crate) = 47743
SHA256 (rust/crates/unicode-linebreak-0.1.5.crate) = 3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f
SIZE (rust/crates/unicode-linebreak-0.1.5.crate) = 15324
-SHA256 (rust/crates/unicode-normalization-0.1.23.crate) = a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5
-SIZE (rust/crates/unicode-normalization-0.1.23.crate) = 122649
-SHA256 (rust/crates/unicode-width-0.1.13.crate) = 0336d538f7abc86d282a4189614dfaa90810dfc2c6f6427eaf88e16311dd225d
-SIZE (rust/crates/unicode-width-0.1.13.crate) = 457228
-SHA256 (rust/crates/url-2.5.2.crate) = 22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c
-SIZE (rust/crates/url-2.5.2.crate) = 79704
+SHA256 (rust/crates/unicode-width-0.2.0.crate) = 1fc81956842c57dac11422a97c3b8195a1ff727f06e85c84ed2e8aa277c9a0fd
+SIZE (rust/crates/unicode-width-0.2.0.crate) = 271509
+SHA256 (rust/crates/unit-prefix-0.5.1.crate) = 323402cff2dd658f39ca17c789b502021b3f18707c91cdf22e3838e1b4023817
+SIZE (rust/crates/unit-prefix-0.5.1.crate) = 7627
+SHA256 (rust/crates/url-2.5.4.crate) = 32f8b686cadd1473f4bd0117a5d28d36b1ade384ea9b5069a1c40aefed7fda60
+SIZE (rust/crates/url-2.5.4.crate) = 81097
+SHA256 (rust/crates/utf8_iter-1.0.4.crate) = b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be
+SIZE (rust/crates/utf8_iter-1.0.4.crate) = 10437
SHA256 (rust/crates/utf8parse-0.2.2.crate) = 06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821
SIZE (rust/crates/utf8parse-0.2.2.crate) = 13499
-SHA256 (rust/crates/v_frame-0.3.8.crate) = d6f32aaa24bacd11e488aa9ba66369c7cd514885742c9fe08cfe85884db3e92b
-SIZE (rust/crates/v_frame-0.3.8.crate) = 14967
-SHA256 (rust/crates/valuable-0.1.0.crate) = 830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d
-SIZE (rust/crates/valuable-0.1.0.crate) = 27718
+SHA256 (rust/crates/v_frame-0.3.9.crate) = 666b7727c8875d6ab5db9533418d7c764233ac9c0cff1d469aec8fa127597be2
+SIZE (rust/crates/v_frame-0.3.9.crate) = 20856
+SHA256 (rust/crates/valuable-0.1.1.crate) = ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65
+SIZE (rust/crates/valuable-0.1.1.crate) = 28679
SHA256 (rust/crates/vapoursynth-0.4.0.crate) = 0c7df702c65dec1cfa3b93f824a1e58d5b0fdb82ac8a722596f43d7214282f56
SIZE (rust/crates/vapoursynth-0.4.0.crate) = 58899
SHA256 (rust/crates/vapoursynth-sys-0.4.1.crate) = 2b35092be61a799005aabfd2e9e95d074125984013142d87a5d3edecc039b9b5
SIZE (rust/crates/vapoursynth-sys-0.4.1.crate) = 587211
SHA256 (rust/crates/vcpkg-0.2.15.crate) = accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426
SIZE (rust/crates/vcpkg-0.2.15.crate) = 228735
-SHA256 (rust/crates/vergen-9.0.0.crate) = c32e7318e93a9ac53693b6caccfb05ff22e04a44c7cf8a279051f24c09da286f
-SIZE (rust/crates/vergen-9.0.0.crate) = 27175
-SHA256 (rust/crates/vergen-git2-1.0.0.crate) = a62c52cd2b2b8b7ec75fc20111b3022ac3ff83e4fc14b9497cfcfd39c54f9c67
-SIZE (rust/crates/vergen-git2-1.0.0.crate) = 21138
-SHA256 (rust/crates/vergen-lib-0.1.3.crate) = e06bee42361e43b60f363bad49d63798d0f42fb1768091812270eca00c784720
-SIZE (rust/crates/vergen-lib-0.1.3.crate) = 17151
-SHA256 (rust/crates/version-compare-0.2.0.crate) = 852e951cb7832cb45cb1169900d19760cfa39b82bc0ea9c0e5a14ae88411c98b
-SIZE (rust/crates/version-compare-0.2.0.crate) = 13942
-SHA256 (rust/crates/version_check-0.9.5.crate) = 0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a
-SIZE (rust/crates/version_check-0.9.5.crate) = 15554
-SHA256 (rust/crates/wasi-0.11.0+wasi-snapshot-preview1.crate) = 9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423
-SIZE (rust/crates/wasi-0.11.0+wasi-snapshot-preview1.crate) = 28131
-SHA256 (rust/crates/wasm-bindgen-0.2.92.crate) = 4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8
-SIZE (rust/crates/wasm-bindgen-0.2.92.crate) = 184119
-SHA256 (rust/crates/wasm-bindgen-backend-0.2.92.crate) = 614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da
-SIZE (rust/crates/wasm-bindgen-backend-0.2.92.crate) = 28348
-SHA256 (rust/crates/wasm-bindgen-macro-0.2.92.crate) = a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726
-SIZE (rust/crates/wasm-bindgen-macro-0.2.92.crate) = 13835
-SHA256 (rust/crates/wasm-bindgen-macro-support-0.2.92.crate) = e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7
-SIZE (rust/crates/wasm-bindgen-macro-support-0.2.92.crate) = 20092
-SHA256 (rust/crates/wasm-bindgen-shared-0.2.92.crate) = af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96
-SIZE (rust/crates/wasm-bindgen-shared-0.2.92.crate) = 7263
-SHA256 (rust/crates/web-sys-0.3.69.crate) = 77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef
-SIZE (rust/crates/web-sys-0.3.69.crate) = 728877
-SHA256 (rust/crates/which-6.0.2.crate) = 3d9c5ed668ee1f17edb3b627225343d210006a90bb1e3745ce1f30b1fb115075
-SIZE (rust/crates/which-6.0.2.crate) = 16608
+SHA256 (rust/crates/vergen-9.0.6.crate) = 6b2bf58be11fc9414104c6d3a2e464163db5ef74b12296bda593cac37b6e4777
+SIZE (rust/crates/vergen-9.0.6.crate) = 33160
+SHA256 (rust/crates/vergen-git2-1.0.7.crate) = 4f6ee511ec45098eabade8a0750e76eec671e7fb2d9360c563911336bea9cac1
+SIZE (rust/crates/vergen-git2-1.0.7.crate) = 29815
+SHA256 (rust/crates/vergen-lib-0.1.6.crate) = 9b07e6010c0f3e59fcb164e0163834597da68d1f864e2b8ca49f74de01e9c166
+SIZE (rust/crates/vergen-lib-0.1.6.crate) = 20754
+SHA256 (rust/crates/wait-timeout-0.2.1.crate) = 09ac3b126d3914f9849036f826e054cbabdc8519970b8998ddaf3b5bd3c65f11
+SIZE (rust/crates/wait-timeout-0.2.1.crate) = 11435
+SHA256 (rust/crates/wasi-0.14.2+wasi-0.2.4.crate) = 9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3
+SIZE (rust/crates/wasi-0.14.2+wasi-0.2.4.crate) = 140921
+SHA256 (rust/crates/wasm-bindgen-0.2.100.crate) = 1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5
+SIZE (rust/crates/wasm-bindgen-0.2.100.crate) = 48288
+SHA256 (rust/crates/wasm-bindgen-backend-0.2.100.crate) = 2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6
+SIZE (rust/crates/wasm-bindgen-backend-0.2.100.crate) = 32111
+SHA256 (rust/crates/wasm-bindgen-macro-0.2.100.crate) = 7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407
+SIZE (rust/crates/wasm-bindgen-macro-0.2.100.crate) = 9663
+SHA256 (rust/crates/wasm-bindgen-macro-support-0.2.100.crate) = 8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de
+SIZE (rust/crates/wasm-bindgen-macro-support-0.2.100.crate) = 26243
+SHA256 (rust/crates/wasm-bindgen-shared-0.2.100.crate) = 1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d
+SIZE (rust/crates/wasm-bindgen-shared-0.2.100.crate) = 8570
+SHA256 (rust/crates/web-sys-0.3.77.crate) = 33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2
+SIZE (rust/crates/web-sys-0.3.77.crate) = 638246
+SHA256 (rust/crates/web-time-1.1.0.crate) = 5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb
+SIZE (rust/crates/web-time-1.1.0.crate) = 18026
+SHA256 (rust/crates/which-8.0.0.crate) = d3fabb953106c3c8eea8306e4393700d7657561cb43122571b172bbfb7c7ba1d
+SIZE (rust/crates/which-8.0.0.crate) = 26209
SHA256 (rust/crates/winapi-0.3.9.crate) = 5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419
SIZE (rust/crates/winapi-0.3.9.crate) = 1200382
SHA256 (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6
SIZE (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = 2918815
SHA256 (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f
SIZE (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 2947998
-SHA256 (rust/crates/windows-0.57.0.crate) = 12342cb4d8e3b046f3d80effd474a7a02447231330ef77d71daa6fbc40681143
-SIZE (rust/crates/windows-0.57.0.crate) = 9694564
-SHA256 (rust/crates/windows-core-0.52.0.crate) = 33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9
-SIZE (rust/crates/windows-core-0.52.0.crate) = 42154
-SHA256 (rust/crates/windows-core-0.57.0.crate) = d2ed2439a290666cd67ecce2b0ffaad89c2a56b976b736e6ece670297897832d
-SIZE (rust/crates/windows-core-0.57.0.crate) = 53695
-SHA256 (rust/crates/windows-implement-0.57.0.crate) = 9107ddc059d5b6fbfbffdfa7a7fe3e22a226def0b2608f72e9d552763d3e1ad7
-SIZE (rust/crates/windows-implement-0.57.0.crate) = 10470
-SHA256 (rust/crates/windows-interface-0.57.0.crate) = 29bee4b38ea3cde66011baa44dba677c432a78593e202392d1e9070cf2a7fca7
-SIZE (rust/crates/windows-interface-0.57.0.crate) = 10931
-SHA256 (rust/crates/windows-result-0.1.2.crate) = 5e383302e8ec8515204254685643de10811af0ed97ea37210dc26fb0032647f8
-SIZE (rust/crates/windows-result-0.1.2.crate) = 10601
-SHA256 (rust/crates/windows-sys-0.52.0.crate) = 282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d
-SIZE (rust/crates/windows-sys-0.52.0.crate) = 2576877
+SHA256 (rust/crates/windows-0.61.1.crate) = c5ee8f3d025738cb02bad7868bbb5f8a6327501e870bf51f1b455b0a2454a419
+SIZE (rust/crates/windows-0.61.1.crate) = 9342486
+SHA256 (rust/crates/windows-collections-0.2.0.crate) = 3beeceb5e5cfd9eb1d76b381630e82c4241ccd0d27f1a39ed41b2760b255c5e8
+SIZE (rust/crates/windows-collections-0.2.0.crate) = 13579
+SHA256 (rust/crates/windows-core-0.61.2.crate) = c0fdd3ddb90610c7638aa2b3a3ab2904fb9e5cdbecc643ddb3647212781c4ae3
+SIZE (rust/crates/windows-core-0.61.2.crate) = 36771
+SHA256 (rust/crates/windows-future-0.2.1.crate) = fc6a41e98427b19fe4b73c550f060b59fa592d7d686537eebf9385621bfbad8e
+SIZE (rust/crates/windows-future-0.2.1.crate) = 17532
+SHA256 (rust/crates/windows-implement-0.60.0.crate) = a47fddd13af08290e67f4acabf4b459f647552718f683a7b415d290ac744a836
+SIZE (rust/crates/windows-implement-0.60.0.crate) = 15073
+SHA256 (rust/crates/windows-interface-0.59.1.crate) = bd9211b69f8dcdfa817bfd14bf1c97c9188afa36f4750130fcdf3f400eca9fa8
+SIZE (rust/crates/windows-interface-0.59.1.crate) = 11735
+SHA256 (rust/crates/windows-link-0.1.1.crate) = 76840935b766e1b0a05c0066835fb9ec80071d4c09a16f6bd5f7e655e3c14c38
+SIZE (rust/crates/windows-link-0.1.1.crate) = 6154
+SHA256 (rust/crates/windows-link-0.2.0.crate) = 45e46c0661abb7180e7b9c281db115305d49ca1709ab8242adf09666d2173c65
+SIZE (rust/crates/windows-link-0.2.0.crate) = 6170
+SHA256 (rust/crates/windows-numerics-0.2.0.crate) = 9150af68066c4c5c07ddc0ce30421554771e528bde427614c61038bc2c92c2b1
+SIZE (rust/crates/windows-numerics-0.2.0.crate) = 9686
+SHA256 (rust/crates/windows-result-0.3.4.crate) = 56f42bd332cc6c8eac5af113fc0c1fd6a8fd2aa08a0119358686e5160d0586c6
+SIZE (rust/crates/windows-result-0.3.4.crate) = 13418
+SHA256 (rust/crates/windows-strings-0.4.2.crate) = 56e6c93f3a0c3b36176cb1327a4958a0353d5d166c2a35cb268ace15e91d3b57
+SIZE (rust/crates/windows-strings-0.4.2.crate) = 13983
+SHA256 (rust/crates/windows-sys-0.59.0.crate) = 1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b
+SIZE (rust/crates/windows-sys-0.59.0.crate) = 2387323
+SHA256 (rust/crates/windows-sys-0.60.2.crate) = f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb
+SIZE (rust/crates/windows-sys-0.60.2.crate) = 2518479
+SHA256 (rust/crates/windows-sys-0.61.0.crate) = e201184e40b2ede64bc2ea34968b28e33622acdbbf37104f0e4a33f7abe657aa
+SIZE (rust/crates/windows-sys-0.61.0.crate) = 2517134
SHA256 (rust/crates/windows-targets-0.52.6.crate) = 9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973
SIZE (rust/crates/windows-targets-0.52.6.crate) = 6403
+SHA256 (rust/crates/windows-targets-0.53.2.crate) = c66f69fcc9ce11da9966ddb31a40968cad001c5bedeb5c2b82ede4253ab48aef
+SIZE (rust/crates/windows-targets-0.53.2.crate) = 7046
+SHA256 (rust/crates/windows-threading-0.1.0.crate) = b66463ad2e0ea3bbf808b7f1d371311c80e115c0b71d60efc142cafbcfb057a6
+SIZE (rust/crates/windows-threading-0.1.0.crate) = 9085
SHA256 (rust/crates/windows_aarch64_gnullvm-0.52.6.crate) = 32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3
SIZE (rust/crates/windows_aarch64_gnullvm-0.52.6.crate) = 435718
+SHA256 (rust/crates/windows_aarch64_gnullvm-0.53.0.crate) = 86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764
+SIZE (rust/crates/windows_aarch64_gnullvm-0.53.0.crate) = 782443
SHA256 (rust/crates/windows_aarch64_msvc-0.52.6.crate) = 09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469
SIZE (rust/crates/windows_aarch64_msvc-0.52.6.crate) = 832615
+SHA256 (rust/crates/windows_aarch64_msvc-0.53.0.crate) = c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c
+SIZE (rust/crates/windows_aarch64_msvc-0.53.0.crate) = 834446
SHA256 (rust/crates/windows_i686_gnu-0.52.6.crate) = 8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b
SIZE (rust/crates/windows_i686_gnu-0.52.6.crate) = 880402
+SHA256 (rust/crates/windows_i686_gnu-0.53.0.crate) = c1dc67659d35f387f5f6c479dc4e28f1d4bb90ddd1a5d3da2e5d97b42d6272c3
+SIZE (rust/crates/windows_i686_gnu-0.53.0.crate) = 936973
SHA256 (rust/crates/windows_i686_gnullvm-0.52.6.crate) = 0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66
SIZE (rust/crates/windows_i686_gnullvm-0.52.6.crate) = 475940
+SHA256 (rust/crates/windows_i686_gnullvm-0.53.0.crate) = 9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11
+SIZE (rust/crates/windows_i686_gnullvm-0.53.0.crate) = 854056
SHA256 (rust/crates/windows_i686_msvc-0.52.6.crate) = 240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66
SIZE (rust/crates/windows_i686_msvc-0.52.6.crate) = 901163
+SHA256 (rust/crates/windows_i686_msvc-0.53.0.crate) = 581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d
+SIZE (rust/crates/windows_i686_msvc-0.53.0.crate) = 903450
SHA256 (rust/crates/windows_x86_64_gnu-0.52.6.crate) = 147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78
SIZE (rust/crates/windows_x86_64_gnu-0.52.6.crate) = 836363
+SHA256 (rust/crates/windows_x86_64_gnu-0.53.0.crate) = 2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba
+SIZE (rust/crates/windows_x86_64_gnu-0.53.0.crate) = 902585
SHA256 (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d
SIZE (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 435707
+SHA256 (rust/crates/windows_x86_64_gnullvm-0.53.0.crate) = 0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57
+SIZE (rust/crates/windows_x86_64_gnullvm-0.53.0.crate) = 782434
SHA256 (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec
SIZE (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 832564
-SHA256 (rust/crates/winnow-0.6.18.crate) = 68a9bda4691f099d435ad181000724da8e5899daa10713c2d432552b9ccd3a6f
-SIZE (rust/crates/winnow-0.6.18.crate) = 163357
+SHA256 (rust/crates/windows_x86_64_msvc-0.53.0.crate) = 271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486
+SIZE (rust/crates/windows_x86_64_msvc-0.53.0.crate) = 834400
SHA256 (rust/crates/winsafe-0.0.19.crate) = d135d17ab770252ad95e9a872d365cf3090e3be864a34ab46f48555993efc904
SIZE (rust/crates/winsafe-0.0.19.crate) = 492820
+SHA256 (rust/crates/wit-bindgen-rt-0.39.0.crate) = 6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1
+SIZE (rust/crates/wit-bindgen-rt-0.39.0.crate) = 12241
+SHA256 (rust/crates/writeable-0.6.1.crate) = ea2f10b9bb0928dfb1b42b65e1f9e36f7f54dbdf08457afefb38afcdec4fa2bb
+SIZE (rust/crates/writeable-0.6.1.crate) = 24068
SHA256 (rust/crates/y4m-0.8.0.crate) = 7a5a4b21e1a62b67a2970e6831bc091d7b87e119e7f9791aef9702e3bef04448
SIZE (rust/crates/y4m-0.8.0.crate) = 12455
-SHA256 (rust/crates/zerocopy-0.7.35.crate) = 1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0
-SIZE (rust/crates/zerocopy-0.7.35.crate) = 152645
-SHA256 (rust/crates/zerocopy-derive-0.7.35.crate) = fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e
-SIZE (rust/crates/zerocopy-derive-0.7.35.crate) = 37829
-SHA256 (master-of-zen-Av1an-0.4.4_GH0.tar.gz) = 6cf3a55838845ed91e642dfd765ca5a969eb4ce4c0c10afa4f9e9dc8cfbce786
-SIZE (master-of-zen-Av1an-0.4.4_GH0.tar.gz) = 142906
+SHA256 (rust/crates/yoke-0.8.0.crate) = 5f41bb01b8226ef4bfd589436a297c53d118f65921786300e427be8d487695cc
+SIZE (rust/crates/yoke-0.8.0.crate) = 28726
+SHA256 (rust/crates/yoke-derive-0.8.0.crate) = 38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6
+SIZE (rust/crates/yoke-derive-0.8.0.crate) = 7521
+SHA256 (rust/crates/zerocopy-0.8.25.crate) = a1702d9583232ddb9174e01bb7c15a2ab8fb1bc6f227aa1233858c351a3ba0cb
+SIZE (rust/crates/zerocopy-0.8.25.crate) = 252714
+SHA256 (rust/crates/zerocopy-derive-0.8.25.crate) = 28a6e20d751156648aa063f3800b706ee209a32c0b4d9f24be3d980b01be55ef
+SIZE (rust/crates/zerocopy-derive-0.8.25.crate) = 87671
+SHA256 (rust/crates/zerofrom-0.1.6.crate) = 50cc42e0333e05660c3587f3bf9d0478688e15d870fab3346451ce7f8c9fbea5
+SIZE (rust/crates/zerofrom-0.1.6.crate) = 5669
+SHA256 (rust/crates/zerofrom-derive-0.1.6.crate) = d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502
+SIZE (rust/crates/zerofrom-derive-0.1.6.crate) = 8305
+SHA256 (rust/crates/zerotrie-0.2.2.crate) = 36f0bbd478583f79edad978b407914f61b2972f5af6fa089686016be8f9af595
+SIZE (rust/crates/zerotrie-0.2.2.crate) = 74423
+SHA256 (rust/crates/zerovec-0.11.2.crate) = 4a05eb080e015ba39cc9e23bbe5e7fb04d5fb040350f99f34e338d5fdd294428
+SIZE (rust/crates/zerovec-0.11.2.crate) = 124500
+SHA256 (rust/crates/zerovec-derive-0.11.1.crate) = 5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f
+SIZE (rust/crates/zerovec-derive-0.11.1.crate) = 21294
+SHA256 (rust-av-Av1an-0.5.0-0.5_GH0.tar.gz) = edfbe6df5fdee9a63f1fc7462198714ce4ace4d00bac7eb09d34d8bfe5798e1c
+SIZE (rust-av-Av1an-0.5.0-0.5_GH0.tar.gz) = 10537152
diff --git a/multimedia/av1an/files/patch-ffmpeg b/multimedia/av1an/files/patch-ffmpeg
deleted file mode 100644
index e93e44713a00..000000000000
--- a/multimedia/av1an/files/patch-ffmpeg
+++ /dev/null
@@ -1,40 +0,0 @@
-https://github.com/zmwangx/rust-ffmpeg/issues/63
-
-error[E0432]: unresolved imports `libc::ENODATA`, `libc::ENOSR`, `libc::ENOSTR`, `libc::ETIME`
- --> cargo-crates/ffmpeg-next-5.1.1/src/util/error.rs:20:22
- |
-20 | ENFILE, ENOBUFS, ENODATA, ENODEV, ENOENT, ENOEXEC, ENOLCK, ENOLINK, ENOMEM, ENOMSG,
- | ^^^^^^^ no `ENODATA` in the root
-21 | ENOPROTOOPT, ENOSPC, ENOSR, ENOSTR, ENOSYS, ENOTCONN, ENOTDIR, ENOTEMPTY, ENOTRECOVERABLE,
- | ^^^^^ ^^^^^^ no `ENOSTR` in the root
- | |
- | no `ENOSR` in the root
-22 | ENOTSOCK, ENOTSUP, ENOTTY, ENXIO, EOPNOTSUPP, EOVERFLOW, EOWNERDEAD, EPERM, EPIPE, EPROTO,
-23 | EPROTONOSUPPORT, EPROTOTYPE, ERANGE, EROFS, ESPIPE, ESRCH, ETIME, ETIMEDOUT, ETXTBSY,
- | ^^^^^ no `ETIME` in the root
- |
-help: a similar name exists in the module
- |
-21 | ENOPROTOOPT, ENOSPC, ENOSR, NOSTR, ENOSYS, ENOTCONN, ENOTDIR, ENOTEMPTY, ENOTRECOVERABLE,
- | ~~~~~
-help: a similar name exists in the module
- |
-23 | EPROTONOSUPPORT, EPROTOTYPE, ERANGE, EROFS, ESPIPE, ESRCH, VTIME, ETIMEDOUT, ETXTBSY,
- | ~~~~~
-
---- cargo-crates/ffmpeg-the-third-2.0.1+ffmpeg-7.0/src/util/error.rs.orig 2006-07-24 01:21:28 UTC
-+++ cargo-crates/ffmpeg-the-third-2.0.1+ffmpeg-7.0/src/util/error.rs
-@@ -19,10 +19,10 @@ pub use libc::{
- EBUSY, ECANCELED, ECHILD, ECONNABORTED, ECONNREFUSED, ECONNRESET, EDEADLK, EDESTADDRREQ, EDOM,
- EEXIST, EFAULT, EFBIG, EHOSTUNREACH, EIDRM, EILSEQ, EINPROGRESS, EINTR, EINVAL, EIO, EISCONN,
- EISDIR, ELOOP, EMFILE, EMLINK, EMSGSIZE, ENAMETOOLONG, ENETDOWN, ENETRESET, ENETUNREACH,
-- ENFILE, ENOBUFS, ENODATA, ENODEV, ENOENT, ENOEXEC, ENOLCK, ENOLINK, ENOMEM, ENOMSG,
-- ENOPROTOOPT, ENOSPC, ENOSR, ENOSTR, ENOSYS, ENOTCONN, ENOTDIR, ENOTEMPTY, ENOTRECOVERABLE,
-+ ENFILE, ENOBUFS, ENODEV, ENOENT, ENOEXEC, ENOLCK, ENOLINK, ENOMEM, ENOMSG,
-+ ENOPROTOOPT, ENOSPC, ENOSYS, ENOTCONN, ENOTDIR, ENOTEMPTY, ENOTRECOVERABLE,
- ENOTSOCK, ENOTSUP, ENOTTY, ENXIO, EOPNOTSUPP, EOVERFLOW, EOWNERDEAD, EPERM, EPIPE, EPROTO,
-- EPROTONOSUPPORT, EPROTOTYPE, ERANGE, EROFS, ESPIPE, ESRCH, ETIME, ETIMEDOUT, ETXTBSY,
-+ EPROTONOSUPPORT, EPROTOTYPE, ERANGE, EROFS, ESPIPE, ESRCH, ETIMEDOUT, ETXTBSY,
- EWOULDBLOCK, EXDEV,
- };
-
diff --git a/multimedia/av1an/files/patch-ffmpeg7-unsigned-char b/multimedia/av1an/files/patch-ffmpeg7-unsigned-char
deleted file mode 100644
index 707b9850b80e..000000000000
--- a/multimedia/av1an/files/patch-ffmpeg7-unsigned-char
+++ /dev/null
@@ -1,55 +0,0 @@
-https://github.com/shssoichiro/ffmpeg-the-third/pull/64
-
---- cargo-crates/ffmpeg-sys-the-third-2.0.0+ffmpeg-7.0/src/avutil/channel_layout.rs.orig 2006-07-24 01:21:28 UTC
-+++ cargo-crates/ffmpeg-sys-the-third-2.0.0+ffmpeg-7.0/src/avutil/channel_layout.rs
-@@ -311,6 +311,7 @@ mod test {
- #[cfg(test)]
- mod test {
- use super::*;
-+ use libc::c_char;
-
- // TODO: Missing: Ambisonic layout
-
-@@ -330,15 +331,15 @@ mod test {
- };
-
- // TODO: Replace with cstr literals when MSRV is 1.77
-- const fn c_string<const N: usize, const K: usize>(byte_str: &[u8; N]) -> [i8; K] {
-+ const fn c_string<const N: usize, const K: usize>(byte_str: &[u8; N]) -> [c_char; K] {
- // Need at least one NUL byte at the end
- assert!(N < K, "input string is too long (max 15 char)");
-
-- let mut result = [0i8; K];
-+ let mut result = [0; K];
- let mut i = 0;
-
- while i < N {
-- result[i] = byte_str[i] as i8;
-+ result[i] = byte_str[i] as c_char;
- i += 1;
- }
-
---- cargo-crates/ffmpeg-the-third-2.0.1+ffmpeg-7.0/src/util/channel_layout/channel_custom.rs.orig 2006-07-24 01:21:28 UTC
-+++ cargo-crates/ffmpeg-the-third-2.0.1+ffmpeg-7.0/src/util/channel_layout/channel_custom.rs
-@@ -1,3 +1,5 @@
-+use libc::c_char;
-+
- use crate::ffi::{AVChannel, AVChannelCustom};
-
- use super::Channel;
-@@ -30,12 +32,12 @@ impl ChannelCustom {
- }
- }
-
--fn to_char_array(bytes: &[u8]) -> [i8; 16] {
-- let mut result = [0i8; 16];
-+fn to_char_array(bytes: &[u8]) -> [c_char; 16] {
-+ let mut result = [0; 16];
-
- // Only take the first 15 bytes, leaving at least one NUL byte
- for (b, r) in bytes.iter().take(15).zip(&mut result) {
-- *r = *b as i8;
-+ *r = *b as c_char;
- }
-
- result
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/butt/Makefile b/multimedia/butt/Makefile
index ab04145f436c..57a3ab4245ed 100644
--- a/multimedia/butt/Makefile
+++ b/multimedia/butt/Makefile
@@ -1,6 +1,6 @@
PORTNAME= butt
PORTVERSION= 1.45.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= multimedia graphics
MASTER_SITES= https://danielnoethen.de/butt/release/${PORTVERSION}/
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/jellyfin/Makefile b/multimedia/jellyfin/Makefile
index 1f708e9c45a5..50367b55e78d 100644
--- a/multimedia/jellyfin/Makefile
+++ b/multimedia/jellyfin/Makefile
@@ -1,5 +1,5 @@
PORTNAME= jellyfin
-DISTVERSION= 10.11.2
+DISTVERSION= 10.11.3
CATEGORIES= multimedia
DISTFILES+= ${PREFETCH_FILE}:prefetch
EXTRACT_ONLY+= ${PORTNAME}-${PORTNAME}-${GH_TAGNAME}_GH0.tar.gz \
diff --git a/multimedia/jellyfin/distinfo b/multimedia/jellyfin/distinfo
index 023b6d2439e2..bf1599f45f87 100644
--- a/multimedia/jellyfin/distinfo
+++ b/multimedia/jellyfin/distinfo
@@ -1,6 +1,6 @@
-TIMESTAMP = 1762838509
-SHA256 (jellyfin-10.11.2-node24-modules.tar.gz) = 09710cd6bad1e311ddc064f66289f451a6c09dc9e7bf8aac149a74134e05fe7e
-SIZE (jellyfin-10.11.2-node24-modules.tar.gz) = 456760330
+TIMESTAMP = 1763469673
+SHA256 (jellyfin-10.11.3-node24-modules.tar.gz) = 09710cd6bad1e311ddc064f66289f451a6c09dc9e7bf8aac149a74134e05fe7e
+SIZE (jellyfin-10.11.3-node24-modules.tar.gz) = 456760330
SHA256 (nuget/asynckeyedlock.7.1.7.nupkg) = 81721332a7b0826b6cef9236487cd9fc0ca28458a1434568fc94a57adc73fabe
SIZE (nuget/asynckeyedlock.7.1.7.nupkg) = 399151
SHA256 (nuget/autofixture.4.18.1.nupkg) = ade3fe6a86223dc223e066c22218dde7f3a1b9654b0ad0f884ab8b3c77b61172
@@ -621,7 +621,7 @@ SHA256 (nuget/z440.atl.core.7.6.0.nupkg) = 279c0b718b953444c3c2ba240c658ce6a70a1
SIZE (nuget/z440.atl.core.7.6.0.nupkg) = 429552
SHA256 (nuget/zlib.net-mutliplatform.1.0.8.nupkg) = d5c2e464927e2f267eb3978c09c4e500d9c5dbe53bce680d861567da8febe33d
SIZE (nuget/zlib.net-mutliplatform.1.0.8.nupkg) = 82188
-SHA256 (jellyfin-jellyfin-v10.11.2_GH0.tar.gz) = 697f3acfd2dd6d18e42a19d85d81ac9d366d935a8bb51a5e50ee5ecadb159611
-SIZE (jellyfin-jellyfin-v10.11.2_GH0.tar.gz) = 1825460
-SHA256 (jellyfin-jellyfin-web-v10.11.2_GH0.tar.gz) = b828a3a3e0dce4dc8f9ab14ae439d8dd2aa6327e05d373d9df73d02b193cbd4a
-SIZE (jellyfin-jellyfin-web-v10.11.2_GH0.tar.gz) = 4340559
+SHA256 (jellyfin-jellyfin-v10.11.3_GH0.tar.gz) = 35ae441197e5231b6170aef3b131a35a4cc6e6c623cf3861fd4253018eeeb15b
+SIZE (jellyfin-jellyfin-v10.11.3_GH0.tar.gz) = 1828566
+SHA256 (jellyfin-jellyfin-web-v10.11.3_GH0.tar.gz) = e2043fbb61cbb7d787c58dda861c866e3a32514d5e101fa553652ad445a134a7
+SIZE (jellyfin-jellyfin-web-v10.11.3_GH0.tar.gz) = 4341077
diff --git a/multimedia/jellyfin/pkg-plist b/multimedia/jellyfin/pkg-plist
index 5752e47f200d..3eefd2115c9c 100644
--- a/multimedia/jellyfin/pkg-plist
+++ b/multimedia/jellyfin/pkg-plist
@@ -861,8 +861,8 @@ jellyfin/jellyfin-web/64422.3eb8906c2038e6c3ec42.chunk.js
jellyfin/jellyfin-web/6464.011b01f894cea75a3aa2.chunk.js
jellyfin/jellyfin-web/64671.1120e9f12b8046e5aca6.chunk.js
jellyfin/jellyfin-web/64790.1474e86e2968130aac5f.chunk.js
+jellyfin/jellyfin-web/6496.106e03ed2cb3c2498e7b.chunk.js
jellyfin/jellyfin-web/6496.820f6a55d98c6299419b.css
-jellyfin/jellyfin-web/6496.dc81e659db436fe4613e.chunk.js
jellyfin/jellyfin-web/65005.2641321a78d62b908c7b.chunk.js
jellyfin/jellyfin-web/65202.32934b673c12d90b7bc8.chunk.js
jellyfin/jellyfin-web/653.48092087f91549065db8.chunk.js
@@ -1050,7 +1050,7 @@ jellyfin/jellyfin-web/85065.bfa6f0fad6b4328d259e.chunk.js
jellyfin/jellyfin-web/85234.7bea5848e2b1a33aa174.chunk.js
jellyfin/jellyfin-web/8528.d43d010f53b953d10119.chunk.js
jellyfin/jellyfin-web/85447.15cb1105bfb62154089d.chunk.js
-jellyfin/jellyfin-web/8575.ceceb0f42894574769e6.chunk.js
+jellyfin/jellyfin-web/8575.22b3385f8c1742fe35c4.chunk.js
jellyfin/jellyfin-web/8575.f181f20df0b13586dc25.css
jellyfin/jellyfin-web/85794.d6548f60c794bfbb2cd3.chunk.js
jellyfin/jellyfin-web/86376.87ce012f8ba76b09eb9c.css
@@ -1142,7 +1142,7 @@ jellyfin/jellyfin-web/98618.8944f222b95bb989acfe.chunk.js
jellyfin/jellyfin-web/98769.eb17c0a7cbbfd6defc54.chunk.js
jellyfin/jellyfin-web/98931.d8ecf56e8251c655e1e0.chunk.js
jellyfin/jellyfin-web/99049.ac743beeb22ff575e18b.chunk.js
-jellyfin/jellyfin-web/99883.5844681b34492722e137.chunk.js
+jellyfin/jellyfin-web/99883.23415867662c89aaf373.chunk.js
jellyfin/jellyfin-web/99911.96739e32337332dad222.chunk.js
jellyfin/jellyfin-web/MaterialIcons-Regular.08cefa1bc6566a650da7.woff
jellyfin/jellyfin-web/MaterialIcons-Regular.2d8017489da689caedc1.woff2
@@ -1274,7 +1274,7 @@ jellyfin/jellyfin-web/hu-json.77d405478b2bc4a757df.chunk.js
jellyfin/jellyfin-web/hy-json.96b15e592694aa5d5c9f.chunk.js
jellyfin/jellyfin-web/icon-transparent.baba78f2a106d9baee83.png
jellyfin/jellyfin-web/id-json.414c3ad30731aa6bccd9.chunk.js
-jellyfin/jellyfin-web/index.7c072432f17194a39ef4.chunk.js
+jellyfin/jellyfin-web/index.074e3e2dffb3db726323.chunk.js
jellyfin/jellyfin-web/index.html
jellyfin/jellyfin-web/is-is-json.140f3c4535fc752b47cb.chunk.js
jellyfin/jellyfin-web/it-json.e95d9c55e7978d409e7f.chunk.js
@@ -1296,7 +1296,7 @@ jellyfin/jellyfin-web/libraries-display.77108e3a19467b9f6569.chunk.js
jellyfin/jellyfin-web/libraries-metadata.4860712b6addf527719f.chunk.js
jellyfin/jellyfin-web/libraries-nfo.c3c3fd48d3a9e22ab105.chunk.js
jellyfin/jellyfin-web/libraries.1b6e01d67fa7276dd291.css
-jellyfin/jellyfin-web/libraries.db1b6d7ee092583eeac8.chunk.js
+jellyfin/jellyfin-web/libraries.4988e265e604bcb0e445.chunk.js
jellyfin/jellyfin-web/libraries/default.woff2
jellyfin/jellyfin-web/libraries/libarchive.wasm
jellyfin/jellyfin-web/libraries/libpgs.worker.js
@@ -1329,7 +1329,7 @@ jellyfin/jellyfin-web/livetv-livetvseriestimers.9399ff956e642aad8cc3.css
jellyfin/jellyfin-web/livetv-livetvsuggested.126d1ceb3b3898fda401.css
jellyfin/jellyfin-web/livetv-livetvsuggested.e54627afd5d905316a61.chunk.js
jellyfin/jellyfin-web/livetv-recordings.2eed0b9a281380a8d82a.chunk.js
-jellyfin/jellyfin-web/livetv.457ec4dc72eb4ce1054b.chunk.js
+jellyfin/jellyfin-web/livetv.4bd6d57d987391d091b0.chunk.js
jellyfin/jellyfin-web/livetv.ae6bfc83359267008eff.css
jellyfin/jellyfin-web/livetvguideprovider-html.ae3b06188d073d33c1e3.chunk.js
jellyfin/jellyfin-web/livetvguideprovider.01145dddc730ae3ad429.chunk.js
@@ -1339,7 +1339,7 @@ jellyfin/jellyfin-web/livetvtuner.5bea29917f988194e4f8.chunk.js
jellyfin/jellyfin-web/logoScreensaver-plugin.7faf55f00dae2ae2fe14.chunk.js
jellyfin/jellyfin-web/logoScreensaver-style-scss.01124e8151a735bf5143.css
jellyfin/jellyfin-web/logoScreensaver-style-scss.1161b3305c308ae1ac05.chunk.js
-jellyfin/jellyfin-web/logs-file.89210666c52de5a5afb1.chunk.js
+jellyfin/jellyfin-web/logs-file.80ee8477c3ba25f2f174.chunk.js
jellyfin/jellyfin-web/logs.22d415847cf13921bce6.chunk.js
jellyfin/jellyfin-web/lt-lt-json.c1d90e5c27197efe73fe.chunk.js
jellyfin/jellyfin-web/lv-json.b0475ec49ac02fff222c.chunk.js
@@ -2589,7 +2589,7 @@ jellyfin/jellyfin-web/playback-video.1bb437c4ee35983c6b77.chunk.js.LICENSE.txt
jellyfin/jellyfin-web/playback-video.307c03a68b62db732104.css
jellyfin/jellyfin-web/plugins-plugin.a067614e764f6fff0ad4.chunk.js
jellyfin/jellyfin-web/plugins-repositories.ad08e2b6e4be11df20e9.chunk.js
-jellyfin/jellyfin-web/plugins.25735003c1d090587fb9.chunk.js
+jellyfin/jellyfin-web/plugins.79d12abe5ee75e209e7e.chunk.js
jellyfin/jellyfin-web/pr-json.dcfa5f50b3ad09018bb5.chunk.js
jellyfin/jellyfin-web/pt-br-json.17118524eb9dc0266deb.chunk.js
jellyfin/jellyfin-web/pt-json.5ebe001aa2e1faf36c61.chunk.js
@@ -2710,9 +2710,9 @@ jellyfin/jellyfin-web/user-controls-index-html.ef65ed406ef218b479be.chunk.js
jellyfin/jellyfin-web/user-controls.44dd33b7ed091c39c6be.chunk.js
jellyfin/jellyfin-web/user-display-index-html.e55f212f1a8fdcbeac6b.chunk.js
jellyfin/jellyfin-web/user-display-index-js.14fffe456f27b2c8eecc.css
-jellyfin/jellyfin-web/user-display-index-tsx.13984a81e75033e273a2.chunk.js
-jellyfin/jellyfin-web/user-display.03cae5ca6911879fd063.chunk.js
+jellyfin/jellyfin-web/user-display-index-tsx.5d6a937128d50ad685da.chunk.js
jellyfin/jellyfin-web/user-display.14fffe456f27b2c8eecc.css
+jellyfin/jellyfin-web/user-display.23e977a15a8f5304c38c.chunk.js
jellyfin/jellyfin-web/user-home-index-html.fa17c7e8a3e77b3c1d63.chunk.js
jellyfin/jellyfin-web/user-home.069ec6a484229e1c235c.chunk.js
jellyfin/jellyfin-web/user-home.32aa40dc7f5ac395403e.css
@@ -2765,9 +2765,9 @@ jellyfin/libse.dll
jellyfin/mscorlib.dll
jellyfin/netstandard.dll
jellyfin/prometheus-net.DotNetRuntime.dll
-jellyfin/wwwroot/api-docs/banner-dark.svg
-jellyfin/wwwroot/api-docs/banner-dark.svg.br
-jellyfin/wwwroot/api-docs/banner-dark.svg.gz
+jellyfin/wwwroot/api-docs/jellyfin.svg
+jellyfin/wwwroot/api-docs/jellyfin.svg.br
+jellyfin/wwwroot/api-docs/jellyfin.svg.gz
jellyfin/wwwroot/api-docs/redoc/custom.css
jellyfin/wwwroot/api-docs/redoc/custom.css.br
jellyfin/wwwroot/api-docs/redoc/custom.css.gz
diff --git a/multimedia/libopenshot/Makefile b/multimedia/libopenshot/Makefile
index 224458362db3..104d8e09d0b7 100644
--- a/multimedia/libopenshot/Makefile
+++ b/multimedia/libopenshot/Makefile
@@ -1,7 +1,7 @@
PORTNAME= libopenshot
DISTVERSIONPREFIX= v
DISTVERSION= 0.4.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= multimedia
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
diff --git a/multimedia/libopenshot/files/patch-src_FFmpegWriter.cpp b/multimedia/libopenshot/files/patch-src_FFmpegWriter.cpp
index 825de6eb04b3..64e3d4628e0d 100644
--- a/multimedia/libopenshot/files/patch-src_FFmpegWriter.cpp
+++ b/multimedia/libopenshot/files/patch-src_FFmpegWriter.cpp
@@ -1,4 +1,4 @@
---- src/FFmpegWriter.cpp.orig 2024-06-20 01:25:10 UTC
+--- src/FFmpegWriter.cpp.orig 2024-12-21 22:27:30 UTC
+++ src/FFmpegWriter.cpp
@@ -166,7 +166,7 @@ void FFmpegWriter::SetVideoOptions(bool has_video, std
const AVCodec *new_codec;
@@ -35,7 +35,7 @@
}
#endif // FFmpeg 4.0+
} else {
-@@ -1434,21 +1437,25 @@ void FFmpegWriter::open_video(AVFormatContext *oc, AVS
+@@ -1434,22 +1437,26 @@ void FFmpegWriter::open_video(AVFormatContext *oc, AVS
adapter_num = openshot::Settings::Instance()->HW_EN_DEVICE_SET;
std::clog << "Encoding Device Nr: " << adapter_num << "\n";
if (adapter_num < 3 && adapter_num >=0) {
@@ -58,8 +58,18 @@
+#if defined(__unix__)
if( adapter_ptr != NULL && access( adapter_ptr, W_OK ) == 0 ) {
#elif defined(_WIN32) || defined(__APPLE__)
-+ if( adapter_ptr != NULL ) {
-+#else
if( adapter_ptr != NULL ) {
++#else
++ if( adapter_ptr != NULL ) {
#endif
ZmqLogger::Instance()->AppendDebugMethod(
+ "Encode Device present using device",
+@@ -1511,7 +1518,7 @@ void FFmpegWriter::open_video(AVFormatContext *oc, AVS
+ switch (video_codec_ctx->codec_id) {
+ case AV_CODEC_ID_H264:
+ video_codec_ctx->max_b_frames = 0; // At least this GPU doesn't support b-frames
+- video_codec_ctx->profile = FF_PROFILE_H264_BASELINE | FF_PROFILE_H264_CONSTRAINED;
++ video_codec_ctx->profile = AV_PROFILE_H264_BASELINE | AV_PROFILE_H264_CONSTRAINED;
+ av_opt_set(video_codec_ctx->priv_data, "preset", "slow", 0);
+ av_opt_set(video_codec_ctx->priv_data, "tune", "zerolatency", 0);
+ av_opt_set(video_codec_ctx->priv_data, "vprofile", "baseline", AV_OPT_SEARCH_CHILDREN);
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/lms/Makefile b/multimedia/lms/Makefile
index e7731f37be69..42e4a6fe81fd 100644
--- a/multimedia/lms/Makefile
+++ b/multimedia/lms/Makefile
@@ -1,6 +1,6 @@
PORTNAME= lms
DISTVERSIONPREFIX= v
-DISTVERSION= 3.71.0
+DISTVERSION= 3.72.0
CATEGORIES= multimedia
MAINTAINER= yuri@FreeBSD.org
diff --git a/multimedia/lms/distinfo b/multimedia/lms/distinfo
index 6d2b1e78f36e..18204ced9a60 100644
--- a/multimedia/lms/distinfo
+++ b/multimedia/lms/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1762757153
-SHA256 (epoupon-lms-v3.71.0_GH0.tar.gz) = 126c61e32be3f8e925e686e468b621088ee7cbcc49ab539186b7ea8dcff8311e
-SIZE (epoupon-lms-v3.71.0_GH0.tar.gz) = 578246
+TIMESTAMP = 1764047239
+SHA256 (epoupon-lms-v3.72.0_GH0.tar.gz) = 5f3ee9d675bf405c72d5fe5bd7130696b5bc2678428e2c354802044e127566ff
+SIZE (epoupon-lms-v3.72.0_GH0.tar.gz) = 582592
diff --git a/multimedia/lms/pkg-plist b/multimedia/lms/pkg-plist
index 8c1d227f2d58..89453589fe67 100644
--- a/multimedia/lms/pkg-plist
+++ b/multimedia/lms/pkg-plist
@@ -1,5 +1,5 @@
bin/lms
-bin/lms-metadata
+bin/lms-audioinfo
@sample etc/lms.conf.sample
etc/pam.d/lms
%%DATADIR%%/approot/admin-about.xml
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/mplayer/files/patch-ffmpeg-8 b/multimedia/mplayer/files/patch-ffmpeg-8
new file mode 100644
index 000000000000..7da6c8825f46
--- /dev/null
+++ b/multimedia/mplayer/files/patch-ffmpeg-8
@@ -0,0 +1,219 @@
+Index: libaf/af_lavcac3enc.c
+===================================================================
+--- libaf/af_lavcac3enc.c (revision 38679)
++++ libaf/af_lavcac3enc.c (working copy)
+@@ -100,9 +100,14 @@
+ s->lavc_actx->sample_rate != af->data->rate ||
+ s->lavc_actx->bit_rate != bit_rate) {
+
+- if (s->lavc_actx->codec)
+- avcodec_close(s->lavc_actx);
++ avcodec_free_context(&s->lavc_actx);
++ s->lavc_actx = avcodec_alloc_context3(NULL);
++ if (!s->lavc_actx) {
++ mp_msg(MSGT_AFILTER, MSGL_ERR, MSGTR_CouldntAllocateLavcContext);
++ return AF_ERROR;
++ }
+
++
+ // Put sample parameters
+ s->lavc_actx->ch_layout.nb_channels = af->data->nch;
+ s->lavc_actx->sample_rate = af->data->rate;
+@@ -157,9 +162,7 @@
+ af_ac3enc_t *s = af->setup;
+ af->setup = NULL;
+ if(s->lavc_actx) {
+- if (s->lavc_actx->codec)
+- avcodec_close(s->lavc_actx);
+- free(s->lavc_actx);
++ avcodec_free_context(&s->lavc_actx);
+ }
+ free(s->pending_data);
+ free(s);
+@@ -280,12 +283,6 @@
+ return AF_ERROR;
+ }
+
+- s->lavc_actx = avcodec_alloc_context3(NULL);
+- if (!s->lavc_actx) {
+- mp_msg(MSGT_AFILTER, MSGL_ERR, MSGTR_CouldntAllocateLavcContext);
+- return AF_ERROR;
+- }
+-
+ return AF_OK;
+ }
+
+Index: libmpcodecs/ad_ffmpeg.c
+===================================================================
+--- libmpcodecs/ad_ffmpeg.c (revision 38679)
++++ libmpcodecs/ad_ffmpeg.c (working copy)
+@@ -196,11 +196,9 @@
+ {
+ AVCodecContext *lavc_context = sh->context;
+
+- if (avcodec_close(lavc_context) < 0)
+- mp_msg(MSGT_DECVIDEO, MSGL_ERR, MSGTR_CantCloseCodec);
+ av_freep(&lavc_context->opaque);
+ av_freep(&lavc_context->extradata);
+- av_freep(&lavc_context);
++ avcodec_free_context(&lavc_context);
+ }
+
+ static int control(sh_audio_t *sh,int cmd,void* arg, ...)
+Index: libmpcodecs/vd_ffmpeg.c
+===================================================================
+--- libmpcodecs/vd_ffmpeg.c (revision 38679)
++++ libmpcodecs/vd_ffmpeg.c (working copy)
+@@ -511,9 +511,6 @@
+ }
+
+ if (avctx) {
+- if (avctx->codec && avcodec_close(avctx) < 0)
+- mp_msg(MSGT_DECVIDEO, MSGL_ERR, MSGTR_CantCloseCodec);
+-
+ av_freep(&avctx->extradata);
+ av_freep(&avctx->hwaccel_context);
+ }
+@@ -1060,8 +1057,8 @@
+ // mpi->qscale = av_frame_get_qp_table(pic, &mpi->qstride, &mpi->qscale_type);
+ mpi->pict_type=pic->pict_type;
+ mpi->fields = MP_IMGFIELD_ORDERED;
+- if(pic->interlaced_frame) mpi->fields |= MP_IMGFIELD_INTERLACED;
+- if(pic->top_field_first ) mpi->fields |= MP_IMGFIELD_TOP_FIRST;
++ if(pic->flags & AV_FRAME_FLAG_INTERLACED) mpi->fields |= MP_IMGFIELD_INTERLACED;
++ if(pic->flags &AV_FRAME_FLAG_TOP_FIELD_FIRST ) mpi->fields |= MP_IMGFIELD_TOP_FIRST;
+ if(pic->repeat_pict == 1) mpi->fields |= MP_IMGFIELD_REPEAT_FIRST;
+
+ return mpi;
+Index: libmpcodecs/ve_lavc.c
+===================================================================
+--- libmpcodecs/ve_lavc.c (revision 38679)
++++ libmpcodecs/ve_lavc.c (working copy)
+@@ -152,7 +152,7 @@
+ static int lavc_param_mv0_threshold = 256;
+ static int lavc_param_refs = 1;
+ static int lavc_param_b_sensitivity = 40;
+-static int lavc_param_level = FF_LEVEL_UNKNOWN;
++static int lavc_param_level = AV_LEVEL_UNKNOWN;
+
+ char *lavc_param_acodec = "mp2";
+ int lavc_param_atag = 0;
+@@ -722,12 +722,12 @@
+
+ if(lavc_param_interlaced_dct){
+ if((mpi->fields & MP_IMGFIELD_ORDERED) && (mpi->fields & MP_IMGFIELD_INTERLACED))
+- pic->top_field_first= !!(mpi->fields & MP_IMGFIELD_TOP_FIRST);
++ pic->flags |= (mpi->fields & MP_IMGFIELD_TOP_FIRST) ? AV_FRAME_FLAG_TOP_FIELD_FIRST : 0;
+ else
+- pic->top_field_first= 1;
++ pic->flags |= AV_FRAME_FLAG_TOP_FIELD_FIRST;
+
+ if(lavc_param_top!=-1)
+- pic->top_field_first= lavc_param_top;
++ pic->flags= (pic->flags & ~AV_FRAME_FLAG_TOP_FIELD_FIRST) | lavc_param_top ? AV_FRAME_FLAG_TOP_FIELD_FIRST : 0;
+ }
+
+ return encode_frame(vf, pic, pts) >= 0;
+@@ -852,9 +852,6 @@
+ av_freep(&lavc_venc_context->intra_matrix);
+ av_freep(&lavc_venc_context->inter_matrix);
+
+- if (lavc_venc_context->codec)
+- avcodec_close(lavc_venc_context);
+-
+ if(stats_file) fclose(stats_file);
+
+ /* free rc_override */
+Index: libmpcodecs/vf_mcdeint.c
+===================================================================
+--- libmpcodecs/vf_mcdeint.c (revision 38679)
++++ libmpcodecs/vf_mcdeint.c (working copy)
+@@ -313,8 +313,7 @@
+ }
+ #endif
+ if (vf->priv->avctx_enc) {
+- avcodec_close(vf->priv->avctx_enc);
+- av_freep(&vf->priv->avctx_enc);
++ avcodec_free_context(&vf->priv->avctx_enc);
+ }
+
+ free(vf->priv->outbuf);
+Index: libmpcodecs/vf_screenshot.c
+===================================================================
+--- libmpcodecs/vf_screenshot.c (revision 38679)
++++ libmpcodecs/vf_screenshot.c (working copy)
+@@ -279,8 +279,7 @@
+
+ static void uninit(vf_instance_t *vf)
+ {
+- avcodec_close(vf->priv->avctx);
+- av_freep(&vf->priv->avctx);
++ avcodec_free_context(&vf->priv->avctx);
+ if(vf->priv->ctx) sws_freeContext(vf->priv->ctx);
+ av_freep(&vf->priv->pic->data[0]);
+ av_frame_free(&vf->priv->pic);
+Index: libmpdemux/demux_lavf.c
+===================================================================
+--- libmpdemux/demux_lavf.c (revision 38679)
++++ libmpdemux/demux_lavf.c (working copy)
+@@ -367,7 +367,10 @@
+ st->discard= AVDISCARD_ALL;
+ if (priv->audio_streams == 0) {
+ size_t rg_size;
+- AVReplayGain *rg = (AVReplayGain*)av_stream_get_side_data(st, AV_PKT_DATA_REPLAYGAIN, &rg_size);
++ const AVPacketSideData *sd = av_packet_side_data_get(st->codecpar->coded_side_data,
++ st->codecpar->nb_coded_side_data,
++ AV_PKT_DATA_REPLAYGAIN);
++ AVReplayGain *rg = sd ? (AVReplayGain*)sd->data : NULL;
+ if (rg && rg_size >= sizeof(*rg)) {
+ priv->r_gain = rg->track_gain / 10000;
+ }
+@@ -378,7 +381,10 @@
+ }
+ case AVMEDIA_TYPE_VIDEO:{
+ AVDictionaryEntry *rot = av_dict_get(st->metadata, "rotate", NULL, 0);
+- const int32_t *disp_matrix = (const int32_t *)av_stream_get_side_data(st, AV_PKT_DATA_DISPLAYMATRIX, NULL);
++ const AVPacketSideData *sd = av_packet_side_data_get(st->codecpar->coded_side_data,
++ st->codecpar->nb_coded_side_data,
++ AV_PKT_DATA_DISPLAYMATRIX);
++ const int32_t *disp_matrix = sd ? (const int32_t *)sd->data : NULL;
+ sh_video_t* sh_video;
+ BITMAPINFOHEADER *bih;
+ sh_video=new_sh_video_vid(demuxer, i, priv->video_streams);
+Index: libvo/vo_png.c
+===================================================================
+--- libvo/vo_png.c (revision 38679)
++++ libvo/vo_png.c (working copy)
+@@ -126,8 +126,7 @@
+
+
+ if (avctx && png_format != format) {
+- avcodec_close(avctx);
+- av_freep(&avctx);
++ avcodec_free_context(&avctx);
+ }
+
+ if (!avctx) {
+@@ -214,8 +213,7 @@
+ }
+
+ static void uninit(void){
+- avcodec_close(avctx);
+- av_freep(&avctx);
++ avcodec_free_context(&avctx);
+ av_freep(&outbuffer);
+ outbuffer_size = 0;
+ free(png_outdir);
+Index: sub/av_sub.c
+===================================================================
+--- sub/av_sub.c (revision 38679)
++++ sub/av_sub.c (working copy)
+@@ -30,8 +30,7 @@
+ AVCodecContext *ctx = sh->context;
+ ctx->extradata = NULL;
+ ctx->extradata_size = 0;
+- avcodec_close(sh->context);
+- av_freep(&sh->context);
++ avcodec_free_context((AVCodecContext **)&sh->context);
+ }
+ }
diff --git a/multimedia/musique/Makefile b/multimedia/musique/Makefile
index 08db899fd2d0..56a17df16740 100644
--- a/multimedia/musique/Makefile
+++ b/multimedia/musique/Makefile
@@ -1,11 +1,11 @@
PORTNAME= musique
-DISTVERSION= 1.11
-PORTREVISION= 1
+DISTVERSION= 1.12
CATEGORIES= multimedia
MAINTAINER= yuri@FreeBSD.org
COMMENT= Music player built for speed, simplicity and style
-WWW= https://flavio.tordini.org/musique
+WWW= https://flavio.tordini.org/musique \
+ https://github.com/flaviotordini/musique
LICENSE= GPLv3+
LICENSE_FILE= ${WRKSRC}/COPYING
@@ -13,20 +13,21 @@ LICENSE_FILE= ${WRKSRC}/COPYING
LIB_DEPENDS= libmpv.so:multimedia/mpv \
libtag.so:audio/taglib
-USES= compiler:c++11-lang desktop-file-utils gl pkgconfig qmake qt:5
+USES= compiler:c++11-lang desktop-file-utils gl pkgconfig qmake qt:6
USE_GITHUB= yes
GH_ACCOUNT= flaviotordini
GH_TUPLE= \
- flaviotordini:http:39bfc6bb149d0b5a49ab966c824906e0523d161c:flaviotordini_http/lib/http \
- flaviotordini:idle:6aa092da64a011e445bf31cf31c0cd8dda4c64ff:flaviotordini_idle/lib/idle \
- flaviotordini:media:5443f81c52ac008a6de6593124d03ee41f772633:flaviotordini_media/lib/media \
- flaviotordini:updater:bbbf833531cd80bbd8a190fa1ae98a1f068c8d16:flaviotordini_updater/lib/updater \
- flaviotordini:js:deed5303b0b6a587c62be73a9bc198058964111c:flaviotordini_js/lib/js \
+ flaviotordini:http:e7689c1:flaviotordini_http/lib/http \
+ flaviotordini:idle:8a8bbb7:flaviotordini_idle/lib/idle \
+ flaviotordini:media:b0310b8:flaviotordini_media/lib/media \
+ flaviotordini:qt-reusable-widgets:197e874:qt_reusable_widgets/lib/qt-reusable-widgets \
+ flaviotordini:updater:081df10:flaviotordini_updater/lib/updater \
+ flaviotordini:js:781170a:flaviotordini_js/lib/js \
flaviotordini:sharedcache:eec981a4285c7b371aa9dc7f0074f03794e86a26:flaviotordini_sharedcache/lib/sharedcache \
itay-grudev:SingleApplication:14e9d14675156d3b55473a3b085de0e2a9f75578:itay_grudev_SingleApplication/lib/singleapplication
USE_GL= gl
-USE_QT= core dbus declarative gui network sql widgets buildtools:build
+USE_QT= base declarative tools:build
QMAKE_ARGS= QMAKE_LRELEASE=${LRELEASE}
@@ -36,8 +37,6 @@ OPTIONS_DEFINE= NLS
OPTIONS_DEFAULT= NLS
OPTIONS_SUB= yes
-NLS_USE= QT=linguisttools:build
-
post-patch-NLS-off:
@${REINPLACE_CMD} -e '/include(locale\/locale.pri)/d' ${WRKSRC}/${PORTNAME}.pro
diff --git a/multimedia/musique/distinfo b/multimedia/musique/distinfo
index 9ffc5fd080b7..e05989bb9b49 100644
--- a/multimedia/musique/distinfo
+++ b/multimedia/musique/distinfo
@@ -1,16 +1,18 @@
-TIMESTAMP = 1687793497
-SHA256 (flaviotordini-musique-1.11_GH0.tar.gz) = de4f6948f530b37df7a9a7f3c187670957726382aca9651ae57818c5120a1c47
-SIZE (flaviotordini-musique-1.11_GH0.tar.gz) = 487321
-SHA256 (flaviotordini-http-39bfc6bb149d0b5a49ab966c824906e0523d161c_GH0.tar.gz) = 39bd6a816ff10f7541704055cf8d3aef6bdc9a9b7243d265df51a6616096b233
-SIZE (flaviotordini-http-39bfc6bb149d0b5a49ab966c824906e0523d161c_GH0.tar.gz) = 11174
-SHA256 (flaviotordini-idle-6aa092da64a011e445bf31cf31c0cd8dda4c64ff_GH0.tar.gz) = 597156e1f7ac3b8d8bdd251008cc0d10487c120462576088eed69425048d4bde
-SIZE (flaviotordini-idle-6aa092da64a011e445bf31cf31c0cd8dda4c64ff_GH0.tar.gz) = 1682
-SHA256 (flaviotordini-media-5443f81c52ac008a6de6593124d03ee41f772633_GH0.tar.gz) = 3a973dacdee44557b28b6aabe121fb8095af2e22ff537c546ea67eb222b24210
-SIZE (flaviotordini-media-5443f81c52ac008a6de6593124d03ee41f772633_GH0.tar.gz) = 26234
-SHA256 (flaviotordini-updater-bbbf833531cd80bbd8a190fa1ae98a1f068c8d16_GH0.tar.gz) = 1633ea982301a0f8d87b7f245b483122f672c12ea36a35d5ae258e782a5a4e6a
-SIZE (flaviotordini-updater-bbbf833531cd80bbd8a190fa1ae98a1f068c8d16_GH0.tar.gz) = 24745
-SHA256 (flaviotordini-js-deed5303b0b6a587c62be73a9bc198058964111c_GH0.tar.gz) = d63b63c93f775b40802a1e5a13672d882d2cfb0708c02ebf228a06ae78ee6dfe
-SIZE (flaviotordini-js-deed5303b0b6a587c62be73a9bc198058964111c_GH0.tar.gz) = 16901
+TIMESTAMP = 1764089690
+SHA256 (flaviotordini-musique-1.12_GH0.tar.gz) = d239c8e96c2e5a63503ff80f58336561b2c08410f4513fd150092a5eecebfa75
+SIZE (flaviotordini-musique-1.12_GH0.tar.gz) = 498430
+SHA256 (flaviotordini-http-e7689c1_GH0.tar.gz) = 9e9ff7a4f74226cc9dfbcf713eb21f3f7172cff627a4b96879bfbcc5e1ae63bb
+SIZE (flaviotordini-http-e7689c1_GH0.tar.gz) = 11357
+SHA256 (flaviotordini-idle-8a8bbb7_GH0.tar.gz) = 96f1ba4502628d439661119d07c067c241fb8d3c2e49f1d6bfb72aeb50b186f1
+SIZE (flaviotordini-idle-8a8bbb7_GH0.tar.gz) = 1670
+SHA256 (flaviotordini-media-b0310b8_GH0.tar.gz) = 271e0d6295fc72c74ba18b278d611159d58dc21f2f9134de834a16417523ab74
+SIZE (flaviotordini-media-b0310b8_GH0.tar.gz) = 26198
+SHA256 (flaviotordini-qt-reusable-widgets-197e874_GH0.tar.gz) = 850d50a92467929492e1d91fa95297157db20da9db58183acce28bec6344ba67
+SIZE (flaviotordini-qt-reusable-widgets-197e874_GH0.tar.gz) = 24315
+SHA256 (flaviotordini-updater-081df10_GH0.tar.gz) = b72d07fd179591be8abb4dd254fd99ada7b14a4aa1650a787ef5a451b9d58714
+SIZE (flaviotordini-updater-081df10_GH0.tar.gz) = 24812
+SHA256 (flaviotordini-js-781170a_GH0.tar.gz) = a18f77688398bfac4796d26302eae67d92b1c887e0c78c6e88ad5d8caa98403c
+SIZE (flaviotordini-js-781170a_GH0.tar.gz) = 16928
SHA256 (flaviotordini-sharedcache-eec981a4285c7b371aa9dc7f0074f03794e86a26_GH0.tar.gz) = 646510d60016795f3d9230f98d2d6abaa71938ea1e28e39c4a41f651ce84a842
SIZE (flaviotordini-sharedcache-eec981a4285c7b371aa9dc7f0074f03794e86a26_GH0.tar.gz) = 2437
SHA256 (itay-grudev-SingleApplication-14e9d14675156d3b55473a3b085de0e2a9f75578_GH0.tar.gz) = 826a2eb9ac72aab77f7e1fe9d398c955696212c30f3f64edbfc47d997cdbc334
diff --git a/multimedia/musique/files/patch-src_coverutils.cpp b/multimedia/musique/files/patch-src_coverutils.cpp
index 1f74650156b8..3f8b594cdb2b 100644
--- a/multimedia/musique/files/patch-src_coverutils.cpp
+++ b/multimedia/musique/files/patch-src_coverutils.cpp
@@ -3,9 +3,9 @@ Fix build with Taglib 2.x
Obtained from:
https://github.com/flaviotordini/musique/commit/7277d40defe9cde40f947a81d624195ddf683f44
---- src/coverutils.cpp.orig 2023-06-24 18:44:28 UTC
+--- src/coverutils.cpp.orig 2023-11-24 00:47:47 UTC
+++ src/coverutils.cpp
-@@ -159,7 +159,7 @@ bool CoverUtils::coverFromMP4(const QString &filename,
+@@ -158,7 +158,7 @@ bool CoverUtils::coverFromMP4(const QString &filename,
TagLib::MP4::Tag *tag = static_cast<TagLib::MP4::Tag *>(f.tag());
if (!tag) return false;
diff --git a/multimedia/musique/files/patch-src_mainwindow.cpp b/multimedia/musique/files/patch-src_mainwindow.cpp
index c1410a1a6c5a..b1e8fb462855 100644
--- a/multimedia/musique/files/patch-src_mainwindow.cpp
+++ b/multimedia/musique/files/patch-src_mainwindow.cpp
@@ -1,17 +1,11 @@
-Fix build with Taglib 2.x
-
-Obtained from:
-https://github.com/flaviotordini/musique/commit/7277d40defe9cde40f947a81d624195ddf683f44
-
---- src/mainwindow.cpp.orig 2023-06-24 18:44:28 UTC
+--- src/mainwindow.cpp.orig 2025-11-25 16:33:26 UTC
+++ src/mainwindow.cpp
-@@ -575,6 +575,9 @@ void MainWindow::createToolBar() {
- volumeSlider = new SeekSlider(this);
- volumeSlider->setValue(volumeSlider->maximum());
+@@ -46,6 +46,8 @@ $END_LICENSE */
+ #include "view.h"
+ #include "zoomableui.h"
+#include <iostream>
+
-+
#if defined(APP_MAC_SEARCHFIELD) && !defined(APP_MAC_QMACTOOLBAR)
- SearchWrapper *searchWrapper = new SearchWrapper(this);
- toolbarSearch = searchWrapper->getSearchLineEdit();
+ #include "searchlineedit_mac.h"
+ #else
diff --git a/multimedia/obs-studio/Makefile b/multimedia/obs-studio/Makefile
index e4bfd99d728c..50d35cf37585 100644
--- a/multimedia/obs-studio/Makefile
+++ b/multimedia/obs-studio/Makefile
@@ -1,5 +1,6 @@
PORTNAME= obs-studio
DISTVERSION= 32.0.2
+PORTREVISION= 1
CATEGORIES= multimedia
MASTER_SITES= https://github.com/obsproject/obs-studio/releases/download/${DISTVERSION}/
DISTFILES= OBS-Studio-${DISTVERSION}-Sources${EXTRACT_SUFX}
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..a8894e4d3642 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$//}/ \
@@ -28,6 +28,9 @@ LIB_DEPENDS= libgcrypt.so:security/libgcrypt \
libebml.so:textproc/libebml
RUN_DEPENDS= ffmpeg>=3.4.1,1:multimedia/ffmpeg
+EXTRA_PATCHES= ${FILESDIR}/vlc-3.0.21-fedora_ffmpeg7-1.patch:-p1 \
+ ${FILESDIR}/vlc-3.0.21-ffmpeg8-1.patch:-p1
+
USES= compiler:c++17-lang cpe desktop-file-utils elfctl gettext-tools \
gl gmake gnome iconv:wchar_t libtool localbase pathfix pkgconfig \
tar:xz
diff --git a/multimedia/vlc/files/vlc-3.0.21-fedora_ffmpeg7-1.patch b/multimedia/vlc/files/vlc-3.0.21-fedora_ffmpeg7-1.patch
new file mode 100644
index 000000000000..d6df9831ddca
--- /dev/null
+++ b/multimedia/vlc/files/vlc-3.0.21-fedora_ffmpeg7-1.patch
@@ -0,0 +1,1139 @@
+Submitted By: Bruce Dubbs <bdubbs@linuxfromscratch.org>
+Date: 2024-05-27
+Initial Package Version: 3.0.20
+Upstream Status: Unknown
+Origin: Fedora
+Description: Fixes compilation with ffmpeg-7
+
+From 965ad6ca875fea94712b4e8b107d0100937dcd4f Mon Sep 17 00:00:00 2001
+From: Steve Lhomme <robux4@ycbcr.xyz>
+Date: Fri, 3 Aug 2018 10:59:16 +0200
+Subject: [PATCH] avcodec: remove libavutils checks that are always true based
+ on configure checks
+
+We assume we use 55.9.0 and 55.22.101
+---
+ modules/codec/avcodec/avcommon_compat.h | 4 ----
+ modules/codec/avcodec/chroma.c | 6 ------
+ modules/codec/avcodec/encoder.c | 6 +-----
+ modules/codec/avcodec/va.c | 5 +----
+ modules/codec/avcodec/video.c | 12 ++----------
+ 5 files changed, 4 insertions(+), 29 deletions(-)
+
+diff --git a/modules/codec/avcodec/avcommon_compat.h b/modules/codec/avcodec/avcommon_compat.h
+index 8f9c12081cf8..afd5cc476f8f 100644
+--- a/modules/codec/avcodec/avcommon_compat.h
++++ b/modules/codec/avcodec/avcommon_compat.h
+@@ -91,10 +91,6 @@
+ ( (LIBAVUTIL_VERSION_MICRO < 100 && LIBAVUTIL_VERSION_INT >= AV_VERSION_INT( a, b, c ) ) || \
+ (LIBAVUTIL_VERSION_MICRO >= 100 && LIBAVUTIL_VERSION_INT >= AV_VERSION_INT( a, d, e ) ) )
+
+-#if !LIBAVUTIL_VERSION_CHECK( 52, 11, 0, 32, 100 )
+-# define AV_PIX_FMT_FLAG_HWACCEL PIX_FMT_HWACCEL
+-#endif
+-
+ /*
+ * AV_PIX_FMT_VAAPI is not introduced in the same major version in libav and FFmpeg:
+ * - libav: lavu 55.8.0: libav/d264c720f7b74286840719e506daba39f83b438b
+diff --git a/modules/codec/avcodec/chroma.c b/modules/codec/avcodec/chroma.c
+index cd8d714bf295..454a20381e41 100644
+--- a/modules/codec/avcodec/chroma.c
++++ b/modules/codec/avcodec/chroma.c
+@@ -145,13 +145,11 @@ static const struct
+ VLC_RGB( VLC_CODEC_RGB32, AV_PIX_FMT_0BGR32, AV_PIX_FMT_0RGB32, 0x000000ff, 0x0000ff00, 0x00ff0000 )
+ #endif
+
+-#if (LIBAVUTIL_VERSION_MICRO == 0 || LIBAVUTIL_VERSION_INT >= AV_VERSION_INT( 55, 0, 100 ) )
+ #ifdef WORDS_BIGENDIAN
+ {VLC_CODEC_RGBA64, AV_PIX_FMT_RGBA64BE, 0, 0, 0 },
+ #else /* !WORDS_BIGENDIAN */
+ {VLC_CODEC_RGBA64, AV_PIX_FMT_RGBA64LE, 0, 0, 0 },
+ #endif /* !WORDS_BIGENDIAN */
+-#endif
+
+ {VLC_CODEC_RGBA, AV_PIX_FMT_RGBA, 0, 0, 0 },
+ {VLC_CODEC_ARGB, AV_PIX_FMT_ARGB, 0, 0, 0 },
+@@ -180,9 +178,7 @@ static const struct
+ {VLC_CODEC_GBR_PLANAR_16B, AV_PIX_FMT_GBRP16BE, 0, 0, 0 },
+
+ /* XYZ */
+-#if LIBAVUTIL_VERSION_CHECK(52, 10, 0, 25, 100)
+ {VLC_CODEC_XYZ12, AV_PIX_FMT_XYZ12, 0xfff0, 0xfff0, 0xfff0},
+-#endif
+ { 0, 0, 0, 0, 0 }
+ };
+
+diff --git a/modules/codec/avcodec/encoder.c b/modules/codec/avcodec/encoder.c
+index a00439e93965..cbe150c7016f 100644
+--- a/modules/codec/avcodec/encoder.c
++++ b/modules/codec/avcodec/encoder.c
+@@ -48,9 +48,7 @@
+ #include "avcodec.h"
+ #include "avcommon.h"
+
+-#if LIBAVUTIL_VERSION_CHECK( 52,2,6,0,0 )
+-# include <libavutil/channel_layout.h>
+-#endif
++#include <libavutil/channel_layout.h>
+
+ #define HURRY_UP_GUARD1 (450000)
+ #define HURRY_UP_GUARD2 (300000)
+@@ -740,7 +738,6 @@ int InitVideoEnc( vlc_object_t *p_this )
+ p_context->time_base.num = 1;
+ p_context->time_base.den = p_context->sample_rate;
+ p_context->channels = p_enc->fmt_out.audio.i_channels;
+-#if LIBAVUTIL_VERSION_CHECK( 52, 2, 6, 0, 0)
+ p_context->channel_layout = channel_mask[p_context->channels][1];
+
+ /* Setup Channel ordering for multichannel audio
+@@ -790,7 +787,6 @@ int InitVideoEnc( vlc_object_t *p_this )
+ p_sys->i_channels_to_reorder =
+ aout_CheckChannelReorder( NULL, pi_order_dst, order_mask,
+ p_sys->pi_reorder_layout );
+-#endif
+
+ if ( p_enc->fmt_out.i_codec == VLC_CODEC_MP4A )
+ {
+diff --git a/modules/codec/avcodec/va.c b/modules/codec/avcodec/va.c
+index d1e3048259be..ecf4e8aa14a1 100644
+--- a/modules/codec/avcodec/va.c
++++ b/modules/codec/avcodec/va.c
+@@ -58,7 +58,6 @@ vlc_fourcc_t vlc_va_GetChroma(enum Pixel
+ }
+ break;
+
+-#if LIBAVUTIL_VERSION_CHECK(54, 13, 1, 24, 100)
+ case AV_PIX_FMT_D3D11VA_VLD:
+ switch (swfmt)
+ {
+@@ -68,8 +67,7 @@ vlc_fourcc_t vlc_va_GetChroma(enum Pixel
+ return VLC_CODEC_D3D11_OPAQUE;
+ }
+ break;
+-#endif
+-#if (LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(52, 4, 0))
++
+ case AV_PIX_FMT_VDPAU:
+ switch (swfmt)
+ {
+@@ -86,7 +84,6 @@ vlc_fourcc_t vlc_va_GetChroma(enum Pixel
+ return 0;
+ }
+ break;
+-#endif
+ default:
+ return 0;
+ }
+diff --git a/modules/codec/avcodec/video.c b/modules/codec/avcodec/video.c
+index a9d45ba4abe1..3c2b3adb2663 100644
+--- a/modules/codec/avcodec/video.c
++++ b/modules/codec/avcodec/video.c
+@@ -39,7 +39,7 @@
+ #include <libavcodec/avcodec.h>
+ #include <libavutil/mem.h>
+ #include <libavutil/pixdesc.h>
+-#if (LIBAVUTIL_VERSION_MICRO >= 100 && LIBAVUTIL_VERSION_INT >= AV_VERSION_INT( 55, 16, 101 ) )
++#if (LIBAVUTIL_VERSION_MICRO >= 100)
+ #include <libavutil/mastering_display_metadata.h>
+ #endif
+
+@@ -687,15 +687,11 @@ static int ffmpeg_OpenVa(decoder_t *p_de
+ static const enum PixelFormat hwfmts[] =
+ {
+ #ifdef _WIN32
+-#if LIBAVUTIL_VERSION_CHECK(54, 13, 1, 24, 100)
+ AV_PIX_FMT_D3D11VA_VLD,
+-#endif
+ AV_PIX_FMT_DXVA2_VLD,
+ #endif
+ AV_PIX_FMT_VAAPI,
+-#if (LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(52, 4, 0))
+ AV_PIX_FMT_VDPAU,
+-#endif
+ AV_PIX_FMT_NONE,
+ };
+
+@@ -995,7 +991,7 @@ static int DecodeSidedata( decoder_t *p_
+ decoder_sys_t *p_sys = p_dec->p_sys;
+ bool format_changed = false;
+
+-#if (LIBAVUTIL_VERSION_MICRO >= 100 && LIBAVUTIL_VERSION_INT >= AV_VERSION_INT( 55, 16, 101 ) )
++#if (LIBAVUTIL_VERSION_MICRO >= 100)
+ #define FROM_AVRAT(default_factor, avrat) \
+ (uint64_t)(default_factor) * (avrat).num / (avrat).den
+ const AVFrameSideData *metadata =
+--
+GitLab
+
+
+From 16fd46fa506424134beb53ec88be3eea1b42a221 Mon Sep 17 00:00:00 2001
+From: Ilkka Ollakka <ileoo@videolan.org>
+Date: Wed, 7 Jul 2021 12:37:58 +0000
+Subject: [PATCH] avcodec: remove use of av_init_packet as it is deprecated in
+ new ffmpeg major version
+
+av_init_packet is deprecated in new major version of ffmpeg.
+
+Also use av_packet_free instead of unref.
+
+Use av_packet_clone and AVPacket * in vlc_av_packet_t.
+---
+ modules/codec/avcodec/subtitle.c | 4 ----
+ 5 files changed, 0 insertions(+), 4 deletions(-)
+
+
+diff --git a/modules/codec/avcodec/subtitle.c b/modules/codec/avcodec/subtitle.c
+index a92522e4ed00..4cb920a8f444 100644
+--- a/modules/codec/avcodec/subtitle.c
++++ b/modules/codec/avcodec/subtitle.c
+@@ -90,11 +90,7 @@ int InitSubtitleDec(vlc_object_t *obj)
+ context->extradata_size = 0;
+ context->extradata = NULL;
+
+-#if LIBAVFORMAT_VERSION_MAJOR >= 59
+ context->pkt_timebase=AV_TIME_BASE_Q;
+-#elif LIBAVFORMAT_VERSION_MICRO >= 100
+- av_codec_set_pkt_timebase(context, AV_TIME_BASE_Q);
+-#endif
+
+ /* */
+ int ret;
+--
+GitLab
+
+
+From 18e98b8a0c410be5e1e9eac55052fe0c56901759 Mon Sep 17 00:00:00 2001
+From: Marvin Scholz <epirat07@gmail.com>
+Date: Tue, 30 Nov 2021 18:20:39 +0100
+Subject: [PATCH] avcommon: remove libav from version check macros
+
+---
+ modules/codec/avcodec/avcommon_compat.h | 29 ++++++++++++-------------
+ modules/codec/avcodec/fourcc.c | 4 ++--
+ modules/codec/avcodec/video.c | 4 ++--
+ modules/demux/avformat/mux.c | 10 ++++-----
+ 5 files changed, 23 insertions(+), 24 deletions(-)
+
+diff --git a/modules/codec/avcodec/avcommon_compat.h b/modules/codec/avcodec/avcommon_compat.h
+index 90de502d99ce..010b570e0820 100644
+--- a/modules/codec/avcodec/avcommon_compat.h
++++ b/modules/codec/avcodec/avcommon_compat.h
+@@ -30,13 +30,13 @@
+ #ifdef HAVE_LIBAVCODEC_AVCODEC_H
+ #include <libavcodec/avcodec.h>
+
+-/* LIBAVCODEC_VERSION_CHECK checks for the right version of libav and FFmpeg
++/* LIBAVCODEC_VERSION_CHECK checks for the right version of FFmpeg
+ * a is the major version
+- * b and c the minor and micro versions of libav
+- * d and e the minor and micro versions of FFmpeg */
+-#define LIBAVCODEC_VERSION_CHECK( a, b, c, d, e ) \
+- ( (LIBAVCODEC_VERSION_MICRO < 100 && LIBAVCODEC_VERSION_INT >= AV_VERSION_INT( a, b, c ) ) || \
+- (LIBAVCODEC_VERSION_MICRO >= 100 && LIBAVCODEC_VERSION_INT >= AV_VERSION_INT( a, d, e ) ) )
++ * b is the minor version
++ * c is the micro version
++ */
++#define LIBAVCODEC_VERSION_CHECK( a, b, c ) \
++ (LIBAVCODEC_VERSION_MICRO >= 100 && LIBAVCODEC_VERSION_INT >= AV_VERSION_INT( a, b, c ) )
+
+ #ifndef AV_CODEC_FLAG_OUTPUT_CORRUPT
+ # define AV_CODEC_FLAG_OUTPUT_CORRUPT CODEC_FLAG_OUTPUT_CORRUPT
+@@ -83,13 +83,13 @@
+ #ifdef HAVE_LIBAVUTIL_AVUTIL_H
+ # include <libavutil/avutil.h>
+
+-/* LIBAVUTIL_VERSION_CHECK checks for the right version of libav and FFmpeg
++/* LIBAVUTIL_VERSION_CHECK checks for the right version of FFmpeg
+ * a is the major version
+- * b and c the minor and micro versions of libav
+- * d and e the minor and micro versions of FFmpeg */
+-#define LIBAVUTIL_VERSION_CHECK( a, b, c, d, e ) \
+- ( (LIBAVUTIL_VERSION_MICRO < 100 && LIBAVUTIL_VERSION_INT >= AV_VERSION_INT( a, b, c ) ) || \
+- (LIBAVUTIL_VERSION_MICRO >= 100 && LIBAVUTIL_VERSION_INT >= AV_VERSION_INT( a, d, e ) ) )
++ * b is the minor version
++ * c is the micro version
++ */
++#define LIBAVUTIL_VERSION_CHECK( a, b, c ) \
++ (LIBAVUTIL_VERSION_MICRO >= 100 && LIBAVUTIL_VERSION_INT >= AV_VERSION_INT( a, b, c ) )
+
+ /*
+ * AV_PIX_FMT_VAAPI is not introduced in the same major version in libav and FFmpeg:
+@@ -115,9 +115,8 @@
+ #ifdef HAVE_LIBAVFORMAT_AVFORMAT_H
+ # include <libavformat/avformat.h>
+
+-#define LIBAVFORMAT_VERSION_CHECK( a, b, c, d, e ) \
+- ( (LIBAVFORMAT_VERSION_MICRO < 100 && LIBAVFORMAT_VERSION_INT >= AV_VERSION_INT( a, b, c ) ) || \
+- (LIBAVFORMAT_VERSION_MICRO >= 100 && LIBAVFORMAT_VERSION_INT >= AV_VERSION_INT( a, d, e ) ) )
++#define LIBAVFORMAT_VERSION_CHECK( a, b, c ) \
++ (LIBAVFORMAT_VERSION_MICRO >= 100 && LIBAVFORMAT_VERSION_INT >= AV_VERSION_INT( a, b, c ) )
+
+ #endif
+
+diff --git a/modules/codec/avcodec/fourcc.c b/modules/codec/avcodec/fourcc.c
+index de41991ebb51..edab2cbdca8f 100644
+--- a/modules/codec/avcodec/fourcc.c
++++ b/modules/codec/avcodec/fourcc.c
+@@ -226,7 +226,7 @@ static const struct vlc_avcodec_fourcc v
+ { VLC_CODEC_CLLC, AV_CODEC_ID_CLLC },
+ { VLC_CODEC_MSS2, AV_CODEC_ID_MSS2 },
+ { VLC_CODEC_VP9, AV_CODEC_ID_VP9 },
+-#if LIBAVCODEC_VERSION_CHECK( 57, 26, 0, 83, 101 )
++#if LIBAVCODEC_VERSION_CHECK( 57, 83, 101 )
+ { VLC_CODEC_AV1, AV_CODEC_ID_AV1 },
+ #endif
+ { VLC_CODEC_ICOD, AV_CODEC_ID_AIC },
+@@ -281,19 +281,19 @@ static const struct vlc_avcodec_fourcc v
+ /* ffmpeg only: AV_CODEC_ID_SNOW */
+ /* ffmpeg only: AV_CODEC_ID_SMVJPEG */
+
+-#if LIBAVCODEC_VERSION_CHECK( 57, 999, 999, 24, 102 )
++#if LIBAVCODEC_VERSION_CHECK( 57, 24, 102 )
+ { VLC_CODEC_CINEFORM, AV_CODEC_ID_CFHD },
+ #endif
+
+-#if LIBAVCODEC_VERSION_CHECK( 57, 999, 999, 70, 100 )
++#if LIBAVCODEC_VERSION_CHECK( 57, 70, 100 )
+ { VLC_CODEC_PIXLET, AV_CODEC_ID_PIXLET },
+ #endif
+
+-#if LIBAVCODEC_VERSION_CHECK( 57, 999, 999, 71, 101 )
++#if LIBAVCODEC_VERSION_CHECK( 57, 71, 101 )
+ { VLC_CODEC_SPEEDHQ, AV_CODEC_ID_SPEEDHQ },
+ #endif
+
+-#if LIBAVCODEC_VERSION_CHECK( 57, 999, 999, 79, 100 )
++#if LIBAVCODEC_VERSION_CHECK( 57, 79, 100 )
+ { VLC_CODEC_FMVC, AV_CODEC_ID_FMVC },
+ #endif
+ };
+@@ -410,7 +410,7 @@ static const struct vlc_avcodec_fourcc a
+ /* AV_CODEC_ID_WESTWOOD_SND1 */
+ { VLC_CODEC_GSM, AV_CODEC_ID_GSM },
+ { VLC_CODEC_QDM2, AV_CODEC_ID_QDM2 },
+-#if LIBAVCODEC_VERSION_CHECK( 57, 999, 999, 71, 100 )
++#if LIBAVCODEC_VERSION_CHECK( 57, 71, 100 )
+ { VLC_CODEC_QDMC, AV_CODEC_ID_QDMC },
+ #endif
+ { VLC_CODEC_COOK, AV_CODEC_ID_COOK },
+@@ -478,7 +478,7 @@ static const struct vlc_avcodec_fourcc s
+ { VLC_CODEC_SSA, AV_CODEC_ID_SSA },
+ /* AV_CODEC_ID_MOV_TEXT */
+ { VLC_CODEC_BD_PG, AV_CODEC_ID_HDMV_PGS_SUBTITLE },
+-#if LIBAVCODEC_VERSION_CHECK( 57, 999, 999, 71, 100 )
++#if LIBAVCODEC_VERSION_CHECK( 57, 71, 100 )
+ { VLC_CODEC_BD_TEXT, AV_CODEC_ID_HDMV_TEXT_SUBTITLE },
+ #endif
+ { VLC_CODEC_TELETEXT, AV_CODEC_ID_DVB_TELETEXT },
+diff --git a/modules/codec/avcodec/video.c b/modules/codec/avcodec/video.c
+index 594c337486a9..d3ba649f272a 100644
+--- a/modules/codec/avcodec/video.c
++++ b/modules/codec/avcodec/video.c
+@@ -257,12 +257,12 @@ static int lavc_GetVideoFormat(decoder_t
+ case AVCOL_TRC_BT2020_12:
+ fmt->transfer = TRANSFER_FUNC_BT2020;
+ break;
+-#if LIBAVUTIL_VERSION_CHECK( 55, 14, 0, 31, 100)
++#if LIBAVUTIL_VERSION_CHECK( 55, 31, 100)
+ case AVCOL_TRC_ARIB_STD_B67:
+ fmt->transfer = TRANSFER_FUNC_ARIB_B67;
+ break;
+ #endif
+-#if LIBAVUTIL_VERSION_CHECK( 55, 17, 0, 37, 100)
++#if LIBAVUTIL_VERSION_CHECK( 55, 37, 100)
+ case AVCOL_TRC_SMPTE2084:
+ fmt->transfer = TRANSFER_FUNC_SMPTE_ST2084;
+ break;
+@@ -1302,7 +1302,7 @@ static picture_t *DecodeBlock( decoder_t
+ }
+
+ /* Compute the PTS */
+-#if LIBAVCODEC_VERSION_CHECK(57, 24, 0, 61, 100)
++#if LIBAVCODEC_VERSION_CHECK(57, 61, 100)
+ # if LIBAVCODEC_VERSION_MICRO >= 100
+ vlc_tick_t i_pts = frame->best_effort_timestamp;
+ # else
+diff --git a/modules/demux/avformat/mux.c b/modules/demux/avformat/mux.c
+index 52fe7ef7f9eb..b9c434f0814f 100644
+--- a/modules/demux/avformat/mux.c
++++ b/modules/demux/avformat/mux.c
+@@ -61,7 +61,7 @@ struct sout_mux_sys_t
+ bool b_write_header;
+ bool b_write_keyframe;
+ bool b_error;
+-#if LIBAVFORMAT_VERSION_CHECK( 57, 7, 0, 40, 100 )
++#if LIBAVFORMAT_VERSION_CHECK( 57, 40, 100 )
+ bool b_header_done;
+ #endif
+ };
+@@ -76,7 +76,7 @@ static int Mux ( sout_mux_t * );
+
+ static int IOWrite( void *opaque, uint8_t *buf, int buf_size );
+ static int64_t IOSeek( void *opaque, int64_t offset, int whence );
+-#if LIBAVFORMAT_VERSION_CHECK( 57, 7, 0, 40, 100 )
++#if LIBAVFORMAT_VERSION_CHECK( 57, 40, 100 )
+ static int IOWriteTyped(void *opaque, uint8_t *buf, int buf_size,
+ enum AVIODataMarkerType type, int64_t time);
+ #endif
+@@ -159,7 +159,7 @@ int avformat_OpenMux( vlc_object_t *p_th
+ p_sys->b_write_header = true;
+ p_sys->b_write_keyframe = false;
+ p_sys->b_error = false;
+-#if LIBAVFORMAT_VERSION_CHECK( 57, 7, 0, 40, 100 )
++#if LIBAVFORMAT_VERSION_CHECK( 57, 40, 100 )
+ p_sys->io->write_data_type = IOWriteTyped;
+ p_sys->b_header_done = false;
+ #endif
+@@ -406,7 +406,7 @@ static int MuxBlock( sout_mux_t *p_mux,
+ return VLC_SUCCESS;
+ }
+
+-#if LIBAVFORMAT_VERSION_CHECK( 57, 7, 0, 40, 100 )
++#if LIBAVFORMAT_VERSION_CHECK( 57, 40, 100 )
+ int IOWriteTyped(void *opaque, uint8_t *buf, int buf_size,
+ enum AVIODataMarkerType type, int64_t time)
+ {
+@@ -523,7 +523,7 @@ static int IOWrite( void *opaque, uint8_
+
+ if( p_sys->b_write_header )
+ p_buf->i_flags |= BLOCK_FLAG_HEADER;
+-#if LIBAVFORMAT_VERSION_CHECK( 57, 7, 0, 40, 100 )
++#if LIBAVFORMAT_VERSION_CHECK( 57, 40, 100 )
+ if( !p_sys->b_header_done )
+ p_buf->i_flags |= BLOCK_FLAG_HEADER;
+ #endif
+--
+GitLab
+
+
+From 8cf02acd84a1e099e15037d7c1e4dce6e8888df9 Mon Sep 17 00:00:00 2001
+From: Marvin Scholz <epirat07@gmail.com>
+Date: Tue, 30 Nov 2021 18:30:28 +0100
+Subject: [PATCH] avcodec: remove LIBAVCODEC_VERSION_MICRO >= 100 checks
+
+This check was used to distinguish FFmpeg and libav, as libav support
+is removed now, this is no longer necessary.
+---
+ modules/codec/avcodec/avcommon_compat.h | 2 +-
+ modules/codec/avcodec/directx_va.c | 4 ++--
+ modules/codec/avcodec/fourcc.c | 18 +++++++-----------
+ modules/codec/avcodec/video.c | 11 +----------
+ 4 files changed, 11 insertions(+), 24 deletions(-)
+
+diff --git a/modules/codec/avcodec/avcommon_compat.h b/modules/codec/avcodec/avcommon_compat.h
+index 010b570e0820..f56ce84b72db 100644
+--- a/modules/codec/avcodec/avcommon_compat.h
++++ b/modules/codec/avcodec/avcommon_compat.h
+@@ -36,7 +36,7 @@
+ * c is the micro version
+ */
+ #define LIBAVCODEC_VERSION_CHECK( a, b, c ) \
+- (LIBAVCODEC_VERSION_MICRO >= 100 && LIBAVCODEC_VERSION_INT >= AV_VERSION_INT( a, b, c ) )
++ (LIBAVCODEC_VERSION_INT >= AV_VERSION_INT( a, b, c ))
+
+ #ifndef AV_CODEC_FLAG_OUTPUT_CORRUPT
+ # define AV_CODEC_FLAG_OUTPUT_CORRUPT CODEC_FLAG_OUTPUT_CORRUPT
+diff --git a/modules/codec/avcodec/directx_va.c b/modules/codec/avcodec/directx_va.c
+index e240fec1ac51..7d180b574a28 100644
+--- a/modules/codec/avcodec/directx_va.c
++++ b/modules/codec/avcodec/directx_va.c
+@@ -274,7 +274,7 @@ static const directx_va_mode_t DXVA_MODE
+
+ /* VPx */
+ { "VP8", &DXVA_ModeVP8_VLD, 8, 0, NULL },
+-#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT( 57, 17, 100 ) && LIBAVCODEC_VERSION_MICRO >= 100
++#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT( 57, 17, 100 )
+ { "VP9 profile 0", &DXVA_ModeVP9_VLD_Profile0, 8, AV_CODEC_ID_VP9, PROF_VP9_MAIN },
+ { "VP9 profile 2", &DXVA_ModeVP9_VLD_10bit_Profile2, 10, AV_CODEC_ID_VP9, PROF_VP9_10 },
+ #else
+@@ -284,7 +284,7 @@ static const directx_va_mode_t DXVA_MODE
+ { "VP9 profile Intel", &DXVA_ModeVP9_VLD_Intel, 8, 0, NULL },
+
+ /* AV1 */
+-#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT( 58, 112, 103 ) && LIBAVCODEC_VERSION_MICRO >= 100
++#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT( 58, 112, 103 )
+ { "AV1 Main profile 8", &DXVA_ModeAV1_VLD_Profile0, 8, AV_CODEC_ID_AV1, PROF_AV1_MAIN },
+ { "AV1 Main profile 10", &DXVA_ModeAV1_VLD_Profile0, 10, AV_CODEC_ID_AV1, PROF_AV1_MAIN },
+ { "AV1 High profile 8", &DXVA_ModeAV1_VLD_Profile1, 8, AV_CODEC_ID_AV1, PROF_AV1_HIGH },
+diff --git a/modules/codec/avcodec/fourcc.c b/modules/codec/avcodec/fourcc.c
+index edab2cbdca8f..c14320aa1530 100644
+--- a/modules/codec/avcodec/fourcc.c
++++ b/modules/codec/avcodec/fourcc.c
+@@ -182,7 +182,7 @@ static const struct vlc_avcodec_fourcc v
+ /* AV_CODEC_ID_V210X */
+ { VLC_CODEC_TMV, AV_CODEC_ID_TMV },
+ { VLC_CODEC_V210, AV_CODEC_ID_V210 },
+-#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT( 54, 50, 100 ) && LIBAVCODEC_VERSION_MICRO >= 100
++#if LIBAVCODEC_VERSION_CHECK( 54, 50, 100 )
+ { VLC_CODEC_VUYA, AV_CODEC_ID_AYUV },
+ #endif
+ /* AV_CODEC_ID_DPX */
+diff --git a/modules/codec/avcodec/video.c b/modules/codec/avcodec/video.c
+index d3ba649f272a..c5385d4574d9 100644
+--- a/modules/codec/avcodec/video.c
++++ b/modules/codec/avcodec/video.c
+@@ -196,10 +196,6 @@ static int lavc_GetVideoFormat(decoder_t
+ {
+ fmt->i_frame_rate = ctx->framerate.num;
+ fmt->i_frame_rate_base = ctx->framerate.den;
+-# if LIBAVCODEC_VERSION_MICRO < 100
+- // for some reason libav don't thinkg framerate presents actually same thing as in ffmpeg
+- fmt->i_frame_rate_base *= __MAX(ctx->ticks_per_frame, 1);
+-# endif
+ }
+ else if (ctx->time_base.num > 0 && ctx->time_base.den > 0)
+ {
+@@ -1303,11 +1299,7 @@ static picture_t *DecodeBlock( decoder_t
+
+ /* Compute the PTS */
+ #if LIBAVCODEC_VERSION_CHECK(57, 61, 100)
+-# if LIBAVCODEC_VERSION_MICRO >= 100
+ vlc_tick_t i_pts = frame->best_effort_timestamp;
+-# else
+- vlc_tick_t i_pts = frame->pts;
+-# endif
+ #else
+ vlc_tick_t i_pts = frame->pkt_pts;
+ #endif
+@@ -1819,8 +1811,7 @@ no_reuse:
+ if (!can_hwaccel)
+ return swfmt;
+
+-#if (LIBAVCODEC_VERSION_MICRO >= 100) \
+- && (LIBAVCODEC_VERSION_INT < AV_VERSION_INT(57, 83, 101))
++#if LIBAVCODEC_VERSION_CHECK(57, 83, 101)
+ if (p_context->active_thread_type)
+ {
+ msg_Warn(p_dec, "thread type %d: disabling hardware acceleration",
+--
+GitLab
+
+
+From 29747a8abb98ba53a64aa6761983891eeed2e0e4 Mon Sep 17 00:00:00 2001
+From: Ilkka Ollakka <ileoo@videolan.org>
+Date: Tue, 4 Jul 2023 16:52:38 +0300
+Subject: [PATCH] avcodec: use p_enc audio channels instead of context channels
+ in encoder
+
+Allows to have less conditions in code when adding new ch_layout use
+---
+ modules/codec/avcodec/encoder.c | 24 ++++++++++++------------
+ 1 file changed, 12 insertions(+), 12 deletions(-)
+
+diff --git a/modules/codec/avcodec/encoder.c b/modules/codec/avcodec/encoder.c
+index 48d41fe317cd..0ef334212ba4 100644
+--- a/modules/codec/avcodec/encoder.c
++++ b/modules/codec/avcodec/encoder.c
+@@ -781,7 +781,7 @@ int InitVideoEnc( vlc_object_t *p_this )
+ }
+ }
+ }
+- if( i_channels_src != p_context->channels )
++ if( i_channels_src != p_enc->fmt_out.audio.i_channels )
+ msg_Err( p_enc, "Channel layout not understood" );
+
+ p_sys->i_channels_to_reorder =
+@@ -887,7 +887,7 @@ int InitVideoEnc( vlc_object_t *p_this )
+ if( ret )
+ {
+ if( p_enc->fmt_in.i_cat != AUDIO_ES ||
+- (p_context->channels <= 2 && i_codec_id != AV_CODEC_ID_MP2
++ (p_enc->fmt_out.audio.i_channels <= 2 && i_codec_id != AV_CODEC_ID_MP2
+ && i_codec_id != AV_CODEC_ID_MP3) )
+ errmsg:
+ {
+@@ -912,7 +912,7 @@ errmsg:
+ goto error;
+ }
+
+- if( p_context->channels > 2 )
++ if( p_enc->fmt_out.audio.i_channels > 2 )
+ {
+ p_context->channels = 2;
+ p_context->channel_layout = channel_mask[p_context->channels][1];
+@@ -1018,7 +1018,7 @@ errmsg:
+ p_context->frame_size :
+ AV_INPUT_BUFFER_MIN_SIZE;
+ p_sys->i_buffer_out = av_samples_get_buffer_size(NULL,
+- p_sys->p_context->channels, p_sys->i_frame_size,
++ p_enc->fmt_out.audio.i_channels, p_sys->i_frame_size,
+ p_sys->p_context->sample_fmt, DEFAULT_ALIGN);
+ p_sys->p_buffer = av_malloc( p_sys->i_buffer_out );
+ if ( unlikely( p_sys->p_buffer == NULL ) )
+@@ -1268,7 +1268,7 @@ static block_t *handle_delay_buffer( enc
+ {
+ block_t *p_block = NULL;
+ //How much we need to copy from new packet
+- const size_t leftover = leftover_samples * p_sys->p_context->channels * p_sys->i_sample_bytes;
++ const size_t leftover = leftover_samples * p_enc->fmt_out.audio.i_channels * p_sys->i_sample_bytes;
+
+ av_frame_unref( p_sys->frame );
+ p_sys->frame->format = p_sys->p_context->sample_fmt;
+@@ -1291,7 +1291,7 @@ static block_t *handle_delay_buffer( enc
+ // We need to deinterleave from p_aout_buf to p_buffer the leftover bytes
+ if( p_sys->b_planar )
+ aout_Deinterleave( p_sys->p_interleave_buf, p_sys->p_buffer,
+- p_sys->i_frame_size, p_sys->p_context->channels, p_enc->fmt_in.i_codec );
++ p_sys->i_frame_size, p_enc->fmt_out.audio.i_channels, p_enc->fmt_in.i_codec );
+ else
+ memcpy( p_sys->p_buffer + buffer_delay, p_aout_buf->p_buffer, leftover);
+
+@@ -1309,7 +1309,7 @@ static block_t *handle_delay_buffer( enc
+ memset( p_sys->p_buffer + (leftover+buffer_delay), 0, padding_size );
+ buffer_delay += padding_size;
+ }
+- if( avcodec_fill_audio_frame( p_sys->frame, p_sys->p_context->channels,
++ if( avcodec_fill_audio_frame( p_sys->frame, p_enc->fmt_out.audio.i_channels,
+ p_sys->p_context->sample_fmt, p_sys->b_planar ? p_sys->p_interleave_buf : p_sys->p_buffer,
+ p_sys->i_buffer_out,
+ DEFAULT_ALIGN) < 0 )
+@@ -1339,7 +1339,7 @@ static block_t *EncodeAudio( encoder_t *
+
+ //i_bytes_left is amount of bytes we get
+ i_samples_left = p_aout_buf ? p_aout_buf->i_nb_samples : 0;
+- buffer_delay = p_sys->i_samples_delay * p_sys->i_sample_bytes * p_sys->p_context->channels;
++ buffer_delay = p_sys->i_samples_delay * p_sys->i_sample_bytes * p_enc->fmt_out.audio.i_channels;
+
+ //p_sys->i_buffer_out = p_sys->i_frame_size * chan * p_sys->i_sample_bytes
+ //Calculate how many bytes we would need from current buffer to fill frame
+@@ -1408,12 +1408,12 @@ static block_t *EncodeAudio( encoder_t *
+ p_sys->frame->channels = p_sys->p_context->channels;
+
+ const int in_bytes = p_sys->frame->nb_samples *
+- p_sys->p_context->channels * p_sys->i_sample_bytes;
++ p_enc->fmt_out.audio.i_channels* p_sys->i_sample_bytes;
+
+ if( p_sys->b_planar )
+ {
+ aout_Deinterleave( p_sys->p_buffer, p_aout_buf->p_buffer,
+- p_sys->frame->nb_samples, p_sys->p_context->channels, p_enc->fmt_in.i_codec );
++ p_sys->frame->nb_samples, p_enc->fmt_out.audio.i_channels, p_enc->fmt_in.i_codec );
+
+ }
+ else
+@@ -1421,7 +1421,7 @@ static block_t *EncodeAudio( encoder_t *
+ memcpy(p_sys->p_buffer, p_aout_buf->p_buffer, in_bytes);
+ }
+
+- if( avcodec_fill_audio_frame( p_sys->frame, p_sys->p_context->channels,
++ if( avcodec_fill_audio_frame( p_sys->frame, p_enc->fmt_out.audio.i_channels,
+ p_sys->p_context->sample_fmt,
+ p_sys->p_buffer,
+ p_sys->i_buffer_out,
+@@ -1447,7 +1447,7 @@ static block_t *EncodeAudio( encoder_t *
+ if( p_aout_buf->i_nb_samples > 0 )
+ {
+ memcpy( p_sys->p_buffer + buffer_delay, p_aout_buf->p_buffer,
+- p_aout_buf->i_nb_samples * p_sys->i_sample_bytes * p_sys->p_context->channels);
++ p_aout_buf->i_nb_samples * p_sys->i_sample_bytes * p_enc->fmt_out.audio.i_channels);
+ p_sys->i_samples_delay += p_aout_buf->i_nb_samples;
+ }
+
+--
+GitLab
+
+
+From c4302ca59dd79efd7208a45a3fcdc44388fd03a8 Mon Sep 17 00:00:00 2001
+From: Ilkka Ollakka <ileoo@videolan.org>
+Date: Tue, 4 Jul 2023 16:53:43 +0300
+Subject: [PATCH] avcodec: add handling of new ch_layout in audio encoder
+
+conditioned to avcodec version where is it added
+---
+ modules/codec/avcodec/encoder.c | 12 ++++++++++++
+ 1 file changed, 12 insertions(+)
+
+diff --git a/modules/codec/avcodec/encoder.c b/modules/codec/avcodec/encoder.c
+index 0ef334212ba4..38a8437261dc 100644
+--- a/modules/codec/avcodec/encoder.c
++++ b/modules/codec/avcodec/encoder.c
+@@ -914,8 +914,12 @@ errmsg:
+
+ if( p_enc->fmt_out.audio.i_channels > 2 )
+ {
++#if LIBAVCODEC_VERSION_CHECK(59, 24, 100)
++ av_channel_layout_default( &p_context->ch_layout, 2 );
++#else
+ p_context->channels = 2;
+ p_context->channel_layout = channel_mask[p_context->channels][1];
++#endif
+
+ /* Change fmt_in in order to ask for a channels conversion */
+ p_enc->fmt_in.audio.i_channels =
+@@ -1273,8 +1277,12 @@ static block_t *handle_delay_buffer( enc
+ av_frame_unref( p_sys->frame );
+ p_sys->frame->format = p_sys->p_context->sample_fmt;
+ p_sys->frame->nb_samples = leftover_samples + p_sys->i_samples_delay;
++#if LIBAVCODEC_VERSION_CHECK(59, 24, 100)
++ av_channel_layout_copy(&p_sys->frame->ch_layout, &p_sys->p_context->ch_layout);
++#else
+ p_sys->frame->channel_layout = p_sys->p_context->channel_layout;
+ p_sys->frame->channels = p_sys->p_context->channels;
++#endif
+
+ p_sys->frame->pts = date_Get( &p_sys->buffer_date ) * p_sys->p_context->time_base.den /
+ CLOCK_FREQ / p_sys->p_context->time_base.num;
+@@ -1404,8 +1412,12 @@ static block_t *EncodeAudio( encoder_t *
+ p_sys->frame->pts = date_Get( &p_sys->buffer_date ) * p_sys->p_context->time_base.den /
+ CLOCK_FREQ / p_sys->p_context->time_base.num;
+
++#if LIBAVCODEC_VERSION_CHECK(59, 24, 100)
++ av_channel_layout_copy(&p_sys->frame->ch_layout, &p_sys->p_context->ch_layout);
++#else
+ p_sys->frame->channel_layout = p_sys->p_context->channel_layout;
+ p_sys->frame->channels = p_sys->p_context->channels;
++#endif
+
+ const int in_bytes = p_sys->frame->nb_samples *
+ p_enc->fmt_out.audio.i_channels* p_sys->i_sample_bytes;
+--
+GitLab
+
+
+From b73dc8841d999c6be9de718cd2cd3aeb13279792 Mon Sep 17 00:00:00 2001
+From: Ilkka Ollakka <ileoo@videolan.org>
+Date: Tue, 4 Jul 2023 16:55:28 +0300
+Subject: [PATCH] avcodec: use ch_layout for channel layout in audio encoder
+
+channels and channel_layout has been deprecated in FFMPEG 5.1 and will be removed eventually
+
+also always create the mapping, as ch_layout is always there
+---
+ modules/codec/avcodec/encoder.c | 46 +++++++++++++--------------------
+ 1 file changed, 18 insertions(+), 28 deletions(-)
+
+diff --git a/modules/codec/avcodec/encoder.c b/modules/codec/avcodec/encoder.c
+index 38a8437261dc..f8bd2bbf939e 100644
+--- a/modules/codec/avcodec/encoder.c
++++ b/modules/codec/avcodec/encoder.c
+@@ -179,6 +179,7 @@ static const uint64_t pi_channels_map[][
+ { AV_CH_STEREO_RIGHT, 0 },
+ };
+
++#if !LIBAVCODEC_VERSION_CHECK(59, 24, 100)
+ static const uint32_t channel_mask[][2] = {
+ {0,0},
+ {AOUT_CHAN_CENTER, AV_CH_LAYOUT_MONO},
+@@ -191,6 +192,7 @@ static const uint32_t channel_mask[][2]
+ {AOUT_CHANS_7_1, AV_CH_LAYOUT_7POINT1},
+ {AOUT_CHANS_8_1, AV_CH_LAYOUT_OCTAGONAL},
+ };
++#endif
+
+ static const char *const ppsz_enc_options[] = {
+ "keyint", "bframes", "vt", "qmin", "qmax", "codec", "hq",
+@@ -737,48 +739,36 @@ int InitVideoEnc( vlc_object_t *p_this )
+ date_Set( &p_sys->buffer_date, AV_NOPTS_VALUE );
+ p_context->time_base.num = 1;
+ p_context->time_base.den = p_context->sample_rate;
+- p_context->channels = p_enc->fmt_out.audio.i_channels;
+- p_context->channel_layout = channel_mask[p_context->channels][1];
+
+- /* Setup Channel ordering for multichannel audio
++ /* Setup Channel ordering for audio
+ * as VLC channel order isn't same as libavcodec expects
+ */
+
+ p_sys->i_channels_to_reorder = 0;
+
+- /* Specified order
++ /* Create channel layout for avcodec
+ * Copied from audio.c
+ */
+- const unsigned i_order_max = 8 * sizeof(p_context->channel_layout);
+ uint32_t pi_order_dst[AOUT_CHAN_MAX] = { };
+ uint32_t order_mask = 0;
+ int i_channels_src = 0;
+
+- if( p_context->channel_layout )
+- {
+- msg_Dbg( p_enc, "Creating channel order for reordering");
+- for( unsigned i = 0; i < sizeof(pi_channels_map)/sizeof(*pi_channels_map); i++ )
+- {
+- if( p_context->channel_layout & pi_channels_map[i][0] )
+- {
+- msg_Dbg( p_enc, "%d %"PRIx64" mapped to %"PRIx64"", i_channels_src, pi_channels_map[i][0], pi_channels_map[i][1]);
+- pi_order_dst[i_channels_src++] = pi_channels_map[i][1];
+- order_mask |= pi_channels_map[i][1];
+- }
+- }
+- }
+- else
++ msg_Dbg( p_enc, "Creating channel order for reordering");
++#if LIBAVCODEC_VERSION_CHECK(59, 24, 100)
++ av_channel_layout_default( &p_context->ch_layout, p_enc->fmt_out.audio.i_channels );
++ uint64_t channel_mask = p_context->ch_layout.u.mask;
++#else
++ p_context->channels = p_enc->fmt_out.audio.i_channels;
++ p_context->channel_layout = channel_mask[p_context->channels][1];
++ uint64_t channel_mask = p_context->channel_layout;
++#endif
++ for( unsigned i = 0; i < sizeof(pi_channels_map)/sizeof(*pi_channels_map); i++ )
+ {
+- msg_Dbg( p_enc, "Creating default channel order for reordering");
+- /* Create default order */
+- for( unsigned int i = 0; i < __MIN( i_order_max, (unsigned)p_sys->p_context->channels ); i++ )
++ if( channel_mask & pi_channels_map[i][0] )
+ {
+- if( i < sizeof(pi_channels_map)/sizeof(*pi_channels_map) )
+- {
+- msg_Dbg( p_enc, "%d channel is %"PRIx64"", i_channels_src, pi_channels_map[i][1]);
+- pi_order_dst[i_channels_src++] = pi_channels_map[i][1];
+- order_mask |= pi_channels_map[i][1];
+- }
++ msg_Dbg( p_enc, "%d %"PRIx64" mapped to %"PRIx64"", i_channels_src, pi_channels_map[i][0], pi_channels_map[i][1]);
++ pi_order_dst[i_channels_src++] = pi_channels_map[i][1];
++ order_mask |= pi_channels_map[i][1];
+ }
+ }
+ if( i_channels_src != p_enc->fmt_out.audio.i_channels )
+--
+GitLab
+
+
+From bddf5ba19111d1cc4463d9876c4bc4ba75f82d7f Mon Sep 17 00:00:00 2001
+From: Ilkka Ollakka <ileoo@videolan.org>
+Date: Wed, 5 Jul 2023 12:51:34 +0300
+Subject: [PATCH] avcodec: use p_dec->fmt_out instead of context channels on
+ audio channel-count
+
+reduces the need of ifdefs when adding ch_layout support
+---
+ modules/codec/avcodec/audio.c | 14 +++++++-------
+ 1 file changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/modules/codec/avcodec/audio.c b/modules/codec/avcodec/audio.c
+index 0937641f21ae..5044e1556231 100644
+--- a/modules/codec/avcodec/audio.c
++++ b/modules/codec/avcodec/audio.c
+@@ -484,15 +484,15 @@ static block_t * ConvertAVFrame( decoder
+ /* Interleave audio if required */
+ if( av_sample_fmt_is_planar( ctx->sample_fmt ) )
+ {
+- p_block = block_Alloc(frame->linesize[0] * ctx->channels);
++ p_block = block_Alloc(frame->linesize[0] * p_dec->fmt_out.audio.i_channels );
+ if ( likely(p_block) )
+ {
+- const void *planes[ctx->channels];
+- for (int i = 0; i < ctx->channels; i++)
++ const void *planes[p_dec->fmt_out.audio.i_channels];
++ for (int i = 0; i < p_dec->fmt_out.audio.i_channels; i++)
+ planes[i] = frame->extended_data[i];
+
+ aout_Interleave(p_block->p_buffer, planes, frame->nb_samples,
+- ctx->channels, p_dec->fmt_out.audio.i_format);
++ p_dec->fmt_out.audio.i_channels, p_dec->fmt_out.audio.i_format);
+ p_block->i_nb_samples = frame->nb_samples;
+ }
+ av_frame_free(&frame);
+@@ -511,7 +511,7 @@ static block_t * ConvertAVFrame( decoder
+ {
+ aout_ChannelExtract( p_buffer->p_buffer,
+ p_dec->fmt_out.audio.i_channels,
+- p_block->p_buffer, ctx->channels,
++ p_block->p_buffer, p_dec->fmt_out.audio.i_channels,
+ p_block->i_nb_samples, p_sys->pi_extraction,
+ p_dec->fmt_out.audio.i_bitspersample );
+ p_buffer->i_nb_samples = p_block->i_nb_samples;
+@@ -600,13 +600,13 @@ static void SetupOutputFormat( decoder_t
+ if( channel_layout )
+ {
+ for( unsigned i = 0; i < i_order_max
+- && i_channels_src < p_sys->p_context->channels; i++ )
++ && i_channels_src < p_dec->fmt_out.audio.i_channels; i++ )
+ {
+ if( channel_layout & pi_channels_map[i][0] )
+ pi_order_src[i_channels_src++] = pi_channels_map[i][1];
+ }
+
+- if( i_channels_src != p_sys->p_context->channels && b_trust )
++ if( i_channels_src != p_dec->fmt_out.audio.i_channels && b_trust )
+ msg_Err( p_dec, "Channel layout not understood" );
+
+ /* Detect special dual mono case */
+--
+GitLab
+
+From 496f0f2a659c1339d1e37330d446e9b6ce96e76b Mon Sep 17 00:00:00 2001
+From: Ilkka Ollakka <ileoo@videolan.org>
+Date: Wed, 5 Jul 2023 13:33:09 +0300
+Subject: [PATCH] avcodec: audio decoder to use ch_layout
+
+---
+ modules/codec/avcodec/audio.c | 42 ++++++++++++++++++++++++++++-------
+ 1 file changed, 34 insertions(+), 8 deletions(-)
+
+diff --git a/modules/codec/avcodec/audio.c b/modules/codec/avcodec/audio.c
+index 5044e1556231..2c85d83005c5 100644
+--- a/modules/codec/avcodec/audio.c
++++ b/modules/codec/avcodec/audio.c
+@@ -139,7 +139,11 @@ static int OpenAudioCodec( decoder_t *p_
+ }
+
+ ctx->sample_rate = p_dec->fmt_in.audio.i_rate;
+- ctx->channels = p_dec->fmt_in.audio.i_channels;
++#if LIBAVCODEC_VERSION_CHECK(59, 24, 100)
++ av_channel_layout_default( &ctx->ch_layout, p_dec->fmt_in.audio.i_channels );
++#else
++ ctx->channels = p_dec->fmt_in.audio.i_channels;
++#endif
+ ctx->block_align = p_dec->fmt_in.audio.i_blockalign;
+ ctx->bit_rate = p_dec->fmt_in.i_bitrate;
+ ctx->bits_per_coded_sample = p_dec->fmt_in.audio.i_bitspersample;
+@@ -395,12 +399,17 @@ static int DecodeBlock( decoder_t *p_dec
+ ret = avcodec_receive_frame( ctx, frame );
+ if( ret == 0 )
+ {
++#if LIBAVCODEC_VERSION_CHECK(59, 24, 100)
++ int channels = frame->ch_layout.nb_channels;
++#else
++ int channels = ctx->channels;
++#endif
+ /* checks and init from first decoded frame */
+- if( ctx->channels <= 0 || ctx->channels > INPUT_CHAN_MAX
++ if( channels <= 0 || channels > INPUT_CHAN_MAX
+ || ctx->sample_rate <= 0 )
+ {
+ msg_Warn( p_dec, "invalid audio properties channels count %d, sample rate %d",
+- ctx->channels, ctx->sample_rate );
++ channels, ctx->sample_rate );
+ goto drop;
+ }
+ else if( p_dec->fmt_out.audio.i_rate != (unsigned int)ctx->sample_rate )
+@@ -580,6 +589,16 @@ static void SetupOutputFormat( decoder_t
+ p_dec->fmt_out.audio.i_rate = p_sys->p_context->sample_rate;
+
+ /* */
++#if LIBAVCODEC_VERSION_CHECK(59, 24, 100)
++ if( p_sys->i_previous_channels == p_sys->p_context->ch_layout.nb_channels &&
++ p_sys->i_previous_layout == p_sys->p_context->ch_layout.u.mask )
++ return;
++ if( b_trust )
++ {
++ p_sys->i_previous_channels = p_sys->p_context->ch_layout.nb_channels;
++ p_sys->i_previous_layout = p_sys->p_context->ch_layout.u.mask;
++ }
++#else
+ if( p_sys->i_previous_channels == p_sys->p_context->channels &&
+ p_sys->i_previous_layout == p_sys->p_context->channel_layout )
+ return;
+@@ -588,25 +607,32 @@ static void SetupOutputFormat( decoder_t
+ p_sys->i_previous_channels = p_sys->p_context->channels;
+ p_sys->i_previous_layout = p_sys->p_context->channel_layout;
+ }
++#endif
+
+- const unsigned i_order_max = sizeof(pi_channels_map)/sizeof(*pi_channels_map);
+- uint32_t pi_order_src[i_order_max];
++ uint32_t pi_order_src[AOUT_CHAN_MAX] = { 0 };
+
+ int i_channels_src = 0;
+- int64_t channel_layout =
++#if LIBAVCODEC_VERSION_CHECK(59, 24, 100)
++ uint64_t channel_layout_mask = p_sys->p_context->ch_layout.u.mask;
++ int channel_count = p_sys->p_context->ch_layout.nb_channels;
++#else
++ uint64_t channel_layout_mask =
+ p_sys->p_context->channel_layout ? p_sys->p_context->channel_layout :
+ av_get_default_channel_layout( p_sys->p_context->channels );
++ (uint64_t)av_get_default_channel_layout( p_sys->p_context->channels );
++ int channel_count = p_sys->p_context->channels;
++#endif
+
+- if( channel_layout )
++ if( channel_layout_mask )
+ {
+- for( unsigned i = 0; i < i_order_max
+- && i_channels_src < p_dec->fmt_out.audio.i_channels; i++ )
++ for( unsigned i = 0; pi_channels_map[i][0]
++ && i_channels_src < channel_count; i++ )
+ {
+- if( channel_layout & pi_channels_map[i][0] )
++ if( channel_layout_mask & pi_channels_map[i][0] )
+ pi_order_src[i_channels_src++] = pi_channels_map[i][1];
+ }
+
+- if( i_channels_src != p_dec->fmt_out.audio.i_channels && b_trust )
++ if( i_channels_src != channel_count && b_trust )
+ msg_Err( p_dec, "Channel layout not understood" );
+
+ /* Detect special dual mono case */
+@@ -638,7 +664,7 @@ static void SetupOutputFormat( decoder_t
+ {
+ msg_Warn( p_dec, "no channel layout found");
+ p_dec->fmt_out.audio.i_physical_channels = 0;
+- p_dec->fmt_out.audio.i_channels = p_sys->p_context->channels;
++ p_dec->fmt_out.audio.i_channels = channel_count;
+ }
+
+ aout_FormatPrepare( &p_dec->fmt_out.audio );
+--
+GitLab
+
+From 0ff86bf8a28a080340f600cb8561815fc43e3b4a Mon Sep 17 00:00:00 2001
+From: Ilkka Ollakka <ileoo@videolan.org>
+Date: Wed, 5 Jul 2023 15:09:57 +0300
+Subject: [PATCH] avcodec/audio: make channel mapping array 0 terminated
+
+Also change pi_channels_src to be only AOUT_CHAN_MAX instead of same
+size as mapping array.
+---
+ modules/codec/avcodec/audio.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/modules/codec/avcodec/audio.c b/modules/codec/avcodec/audio.c
+index 2c85d83005c5..d0c8bae750b2 100644
+--- a/modules/codec/avcodec/audio.c
++++ b/modules/codec/avcodec/audio.c
+@@ -577,6 +577,7 @@ static const uint64_t pi_channels_map[][
+ { AV_CH_TOP_BACK_RIGHT, 0 },
+ { AV_CH_STEREO_LEFT, 0 },
+ { AV_CH_STEREO_RIGHT, 0 },
++ { 0, 0 },
+ };
+
+ static void SetupOutputFormat( decoder_t *p_dec, bool b_trust )
+--
+GitLab
+
+
+From 1a57633d1820eb218771489505876fa55f8a8847 Mon Sep 17 00:00:00 2001
+From: Francois Cartegnie <fcvlcdev@free.fr>
+Date: Tue, 23 Apr 2024 13:13:30 +0700
+Subject: [PATCH 1/4] codec: avcodec: map AYUV as RAWVIDEO with ffmpeg 6.0
+
+---
+ modules/codec/avcodec/fourcc.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/modules/codec/avcodec/fourcc.c b/modules/codec/avcodec/fourcc.c
+index de7b9e1377bd..4ce2584bd303 100644
+--- a/modules/codec/avcodec/fourcc.c
++++ b/modules/codec/avcodec/fourcc.c
+@@ -182,7 +182,9 @@ static const struct vlc_avcodec_fourcc v
+ /* AV_CODEC_ID_V210X */
+ { VLC_CODEC_TMV, AV_CODEC_ID_TMV },
+ { VLC_CODEC_V210, AV_CODEC_ID_V210 },
+-#if LIBAVCODEC_VERSION_CHECK( 54, 50, 100 )
++#if LIBAVCODEC_VERSION_CHECK( 59, 42, 102 )
++ { VLC_CODEC_VUYA, AV_CODEC_ID_RAWVIDEO },
++#else
+ { VLC_CODEC_VUYA, AV_CODEC_ID_AYUV },
+ #endif
+ /* AV_CODEC_ID_DPX */
+--
+GitLab
+
+
+From 3ecdd252b42dca492c79470535703eae0dfc1093 Mon Sep 17 00:00:00 2001
+From: Francois Cartegnie <fcvlcdev@free.fr>
+Date: Tue, 23 Apr 2024 13:14:53 +0700
+Subject: [PATCH 2/4] demux/mux: avformat: use ch_layout from ffmpeg 5.1
+
+---
+ modules/demux/avformat/demux.c | 4 ++++
+ modules/demux/avformat/mux.c | 4 ++++
+ 2 files changed, 8 insertions(+)
+
+diff --git a/modules/demux/avformat/demux.c b/modules/demux/avformat/demux.c
+index 743e0534901c..87f5b41c0d82 100644
+--- a/modules/demux/avformat/demux.c
++++ b/modules/demux/avformat/demux.c
+@@ -401,7 +401,11 @@ int avformat_OpenDemux( vlc_object_t *p_
+ es_format_Init( &es_fmt, AUDIO_ES, fcc );
+ es_fmt.i_original_fourcc = CodecTagToFourcc( cp->codec_tag );
+ es_fmt.i_bitrate = cp->bit_rate;
++#if LIBAVUTIL_VERSION_CHECK( 57, 28, 100 )
++ es_fmt.audio.i_channels = cp->ch_layout.nb_channels;
++#else
+ es_fmt.audio.i_channels = cp->channels;
++#endif
+ es_fmt.audio.i_rate = cp->sample_rate;
+ es_fmt.audio.i_bitspersample = cp->bits_per_coded_sample;
+ es_fmt.audio.i_blockalign = cp->block_align;
+diff --git a/modules/demux/avformat/mux.c b/modules/demux/avformat/mux.c
+index 55fc891437c7..0e87942aa76a 100644
+--- a/modules/demux/avformat/mux.c
++++ b/modules/demux/avformat/mux.c
+@@ -267,7 +267,11 @@ static int AddStream( sout_mux_t *p_mux,
+ {
+ case AUDIO_ES:
+ codecpar->codec_type = AVMEDIA_TYPE_AUDIO;
++#if LIBAVUTIL_VERSION_CHECK( 57, 28, 100 )
++ av_channel_layout_default( &codecpar->ch_layout, fmt->audio.i_channels );
++#else
+ codecpar->channels = fmt->audio.i_channels;
++#endif
+ codecpar->sample_rate = fmt->audio.i_rate;
+ stream->time_base = (AVRational){1, codecpar->sample_rate};
+ if (fmt->i_bitrate == 0) {
+--
+GitLab
+
+
+From 1c15a5e183df7e292afd27795548d3c2254a9bbd Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Robert-Andr=C3=A9=20Mauchin?= <zebob.m@gmail.com>
+Date: Mon, 6 May 2024 12:15:40 +0200
+Subject: [PATCH] demux/mux: avformat: Constify the buffer pointees
+
+in the write_packet from ffmpeg 6.1
+
+The deprecated FF_API_AVIO_WRITE_NONCONST was removed in ffmpeg 7.0.
+
+Ref:
+https://git.ffmpeg.org/gitweb/ffmpeg.git/commit/2a68d945cd74265bb71c3d38b7a2e7f7d7e87be5
+https://git.ffmpeg.org/gitweb/ffmpeg.git/commit/02aea61d69d8f81bc285e2131bf25f96a3e27feb
+---
+ modules/demux/avformat/mux.c | 18 +++++++++++++++++-
+ 1 file changed, 17 insertions(+), 1 deletion(-)
+
+diff --git a/modules/demux/avformat/mux.c b/modules/demux/avformat/mux.c
+index 0e87942aa76a..390aa3cb4dfd 100644
+--- a/modules/demux/avformat/mux.c
++++ b/modules/demux/avformat/mux.c
+@@ -75,9 +75,16 @@ static int AddStream( sout_mux_t *, sout_input_t * );
+ static void DelStream( sout_mux_t *, sout_input_t * );
+ static int Mux ( sout_mux_t * );
+
++#if LIBAVFORMAT_VERSION_CHECK( 61, 01, 100 )
++static int IOWrite( void *opaque, const uint8_t *buf, int buf_size );
++#else
+ static int IOWrite( void *opaque, uint8_t *buf, int buf_size );
++#endif
+ static int64_t IOSeek( void *opaque, int64_t offset, int whence );
+-#if LIBAVFORMAT_VERSION_CHECK( 57, 40, 100 )
++#if LIBAVFORMAT_VERSION_CHECK( 61, 01, 100 )
++static int IOWriteTyped(void *opaque, const uint8_t *buf, int buf_size,
++ enum AVIODataMarkerType type, int64_t time);
++#elif LIBAVFORMAT_VERSION_CHECK( 57, 40, 100 )
+ static int IOWriteTyped(void *opaque, uint8_t *buf, int buf_size,
+ enum AVIODataMarkerType type, int64_t time);
+ #endif
+@@ -436,8 +443,13 @@ static int MuxBlock( sout_mux_t *p_mux, sout_input_t *p_input )
+ }
+
+ #if LIBAVFORMAT_VERSION_CHECK( 57, 40, 100 )
++#if LIBAVFORMAT_VERSION_CHECK( 61, 01, 100 )
++int IOWriteTyped(void *opaque, const uint8_t *buf, int buf_size,
++ enum AVIODataMarkerType type, int64_t time)
++#else
+ int IOWriteTyped(void *opaque, uint8_t *buf, int buf_size,
+ enum AVIODataMarkerType type, int64_t time)
++#endif
+ {
+ VLC_UNUSED(time);
+
+@@ -533,7 +545,11 @@ static int Control( sout_mux_t *p_mux, int i_query, va_list args )
+ /*****************************************************************************
+ * I/O wrappers for libavformat
+ *****************************************************************************/
++#if LIBAVFORMAT_VERSION_CHECK( 61, 01, 100 )
++static int IOWrite( void *opaque, const uint8_t *buf, int buf_size )
++#else
+ static int IOWrite( void *opaque, uint8_t *buf, int buf_size )
++#endif
+ {
+ sout_mux_t *p_mux = opaque;
+ sout_mux_sys_t *p_sys = p_mux->p_sys;
+--
+GitLab
diff --git a/multimedia/vlc/files/vlc-3.0.21-ffmpeg8-1.patch b/multimedia/vlc/files/vlc-3.0.21-ffmpeg8-1.patch
new file mode 100644
index 000000000000..a523b04968f3
--- /dev/null
+++ b/multimedia/vlc/files/vlc-3.0.21-ffmpeg8-1.patch
@@ -0,0 +1,393 @@
+Submitted By: Joe Locash <jlocash@gmail.com>
+Date: 2025-11-19
+Initial Package Version: 3.0.21
+Upstream Status: Unknown
+Origin: Upstream
+Description: Fixes compilation with ffmpeg-8.0
+
+diff -Nuarp vlc-3.0.21.orig/modules/codec/avcodec/audio.c vlc-3.0.21/modules/codec/avcodec/audio.c
+--- vlc-3.0.21.orig/modules/codec/avcodec/audio.c 2025-11-17 18:16:27.482219213 -0500
++++ vlc-3.0.21/modules/codec/avcodec/audio.c 2025-11-17 18:17:09.717861987 -0500
+@@ -44,6 +44,12 @@
+ #include <libavutil/channel_layout.h>
+
+
++#if ! LIBAVCODEC_VERSION_CHECK(61, 33, 102) // Compatibility for profiles <= FFMPEG 8
++# define AV_PROFILE_UNKNOWN FF_PROFILE_UNKNOWN
++# define AV_LEVEL_UNKNOWN FF_LEVEL_UNKNOWN
++# define AV_INPUT_BUFFER_PADDING_SIZE FF_INPUT_BUFFER_PADDING_SIZE
++#endif
++
+ /*****************************************************************************
+ * decoder_sys_t : decoder descriptor
+ *****************************************************************************/
+@@ -101,7 +107,7 @@ static void InitDecoderConfig( decoder_t
+ if( i_size > 0 )
+ {
+ p_context->extradata =
+- av_malloc( i_size + FF_INPUT_BUFFER_PADDING_SIZE );
++ av_malloc( i_size + AV_INPUT_BUFFER_PADDING_SIZE );
+ if( p_context->extradata )
+ {
+ uint8_t *p_dst = p_context->extradata;
+@@ -109,7 +115,7 @@ static void InitDecoderConfig( decoder_t
+ p_context->extradata_size = i_size;
+
+ memcpy( &p_dst[0], &p_src[i_offset], i_size );
+- memset( &p_dst[i_size], 0, FF_INPUT_BUFFER_PADDING_SIZE );
++ memset( &p_dst[i_size], 0, AV_INPUT_BUFFER_PADDING_SIZE );
+ }
+ }
+ }
+@@ -266,9 +272,9 @@ int InitAudioDec( vlc_object_t *obj )
+ p_dec->pf_flush = Flush;
+
+ /* XXX: Writing input format makes little sense. */
+- if( avctx->profile != FF_PROFILE_UNKNOWN )
++ if( avctx->profile != AV_PROFILE_UNKNOWN )
+ p_dec->fmt_in.i_profile = avctx->profile;
+- if( avctx->level != FF_LEVEL_UNKNOWN )
++ if( avctx->level != AV_LEVEL_UNKNOWN )
+ p_dec->fmt_in.i_level = avctx->level;
+
+ return VLC_SUCCESS;
+@@ -348,11 +354,11 @@ static int DecodeBlock( decoder_t *p_dec
+
+ if( (p_block->i_flags & BLOCK_FLAG_PRIVATE_REALLOCATED) == 0 )
+ {
+- *pp_block = p_block = block_Realloc( p_block, 0, p_block->i_buffer + FF_INPUT_BUFFER_PADDING_SIZE );
++ *pp_block = p_block = block_Realloc( p_block, 0, p_block->i_buffer + AV_INPUT_BUFFER_PADDING_SIZE );
+ if( !p_block )
+ goto end;
+- p_block->i_buffer -= FF_INPUT_BUFFER_PADDING_SIZE;
+- memset( &p_block->p_buffer[p_block->i_buffer], 0, FF_INPUT_BUFFER_PADDING_SIZE );
++ p_block->i_buffer -= AV_INPUT_BUFFER_PADDING_SIZE;
++ memset( &p_block->p_buffer[p_block->i_buffer], 0, AV_INPUT_BUFFER_PADDING_SIZE );
+
+ p_block->i_flags |= BLOCK_FLAG_PRIVATE_REALLOCATED;
+ }
+diff -Nuarp vlc-3.0.21.orig/modules/codec/avcodec/avcommon_compat.h vlc-3.0.21/modules/codec/avcodec/avcommon_compat.h
+--- vlc-3.0.21.orig/modules/codec/avcodec/avcommon_compat.h 2025-11-17 18:16:27.478199137 -0500
++++ vlc-3.0.21/modules/codec/avcodec/avcommon_compat.h 2025-11-17 18:17:09.718111806 -0500
+@@ -53,8 +53,11 @@
+ #ifndef AV_CODEC_FLAG2_FAST
+ # define AV_CODEC_FLAG2_FAST CODEC_FLAG2_FAST
+ #endif
+-#ifndef FF_INPUT_BUFFER_PADDING_SIZE
+-# define FF_INPUT_BUFFER_PADDING_SIZE AV_INPUT_BUFFER_PADDING_SIZE
++#if ! LIBAVCODEC_VERSION_CHECK(61, 33, 102) // Compatibility for profiles <= FFMPEG 8
++# ifndef FF_INPUT_BUFFER_PADDING_SIZE
++# define FF_INPUT_BUFFER_PADDING_SIZE 64
++# endif
++#define AV_INPUT_BUFFER_PADDING_SIZE FF_INPUT_BUFFER_PADDING_SIZE
+ #endif
+ #ifndef AV_CODEC_FLAG_INTERLACED_DCT
+ # define AV_CODEC_FLAG_INTERLACED_DCT CODEC_FLAG_INTERLACED_DCT
+@@ -72,7 +75,11 @@
+ # define AV_CODEC_CAP_SMALL_LAST_FRAME CODEC_CAP_SMALL_LAST_FRAME
+ #endif
+ #ifndef AV_INPUT_BUFFER_MIN_SIZE
+-# define AV_INPUT_BUFFER_MIN_SIZE FF_MIN_BUFFER_SIZE
++# ifdef FF_MIN_BUFFER_SIZE
++# define AV_INPUT_BUFFER_MIN_SIZE FF_MIN_BUFFER_SIZE
++# else
++# define AV_INPUT_BUFFER_MIN_SIZE 16384 // removed with ffmpeg 8
++# endif
+ #endif
+ #ifndef FF_MAX_B_FRAMES
+ # define FF_MAX_B_FRAMES 16 // FIXME: remove this
+diff -Nuarp vlc-3.0.21.orig/modules/codec/avcodec/encoder.c vlc-3.0.21/modules/codec/avcodec/encoder.c
+--- vlc-3.0.21.orig/modules/codec/avcodec/encoder.c 2025-11-17 18:16:27.481068106 -0500
++++ vlc-3.0.21/modules/codec/avcodec/encoder.c 2025-11-17 15:11:31.691944598 -0500
+@@ -65,6 +65,17 @@
+ # define AVC_MAYBE_CONST
+ #endif
+
++#if ! LIBAVCODEC_VERSION_CHECK(61, 33, 102) // Compatibility for profiles <= FFMPEG 8
++# define AV_PROFILE_AAC_MAIN FF_PROFILE_AAC_MAIN
++# define AV_PROFILE_AAC_LOW FF_PROFILE_AAC_LOW
++# define AV_PROFILE_AAC_SSR FF_PROFILE_AAC_SSR
++# define AV_PROFILE_AAC_LTP FF_PROFILE_AAC_LTP
++# define AV_PROFILE_AAC_HE_V2 FF_PROFILE_AAC_HE_V2
++# define AV_PROFILE_AAC_HE FF_PROFILE_AAC_HE
++# define AV_PROFILE_AAC_LD FF_PROFILE_AAC_LD
++# define AV_PROFILE_AAC_ELD FF_PROFILE_AAC_ELD
++#endif
++
+ /*****************************************************************************
+ * Local prototypes
+ *****************************************************************************/
+@@ -468,30 +479,30 @@ int InitVideoEnc( vlc_object_t *p_this )
+ psz_val = var_GetString( p_enc, ENC_CFG_PREFIX "aac-profile" );
+ /* libavcodec uses faac encoder atm, and it has issues with
+ * other than low-complexity profile, so default to that */
+- p_sys->i_aac_profile = FF_PROFILE_AAC_LOW;
++ p_sys->i_aac_profile = AV_PROFILE_AAC_LOW;
+ if( psz_val && *psz_val )
+ {
+ if( !strncmp( psz_val, "main", 4 ) )
+- p_sys->i_aac_profile = FF_PROFILE_AAC_MAIN;
++ p_sys->i_aac_profile = AV_PROFILE_AAC_MAIN;
+ else if( !strncmp( psz_val, "low", 3 ) )
+- p_sys->i_aac_profile = FF_PROFILE_AAC_LOW;
++ p_sys->i_aac_profile = AV_PROFILE_AAC_LOW;
+ else if( !strncmp( psz_val, "ssr", 3 ) )
+- p_sys->i_aac_profile = FF_PROFILE_AAC_SSR;
++ p_sys->i_aac_profile = AV_PROFILE_AAC_SSR;
+ else if( !strncmp( psz_val, "ltp", 3 ) )
+- p_sys->i_aac_profile = FF_PROFILE_AAC_LTP;
++ p_sys->i_aac_profile = AV_PROFILE_AAC_LTP;
+ /* These require libavcodec with libfdk-aac */
+ else if( !strncmp( psz_val, "hev2", 4 ) )
+- p_sys->i_aac_profile = FF_PROFILE_AAC_HE_V2;
++ p_sys->i_aac_profile = AV_PROFILE_AAC_HE_V2;
+ else if( !strncmp( psz_val, "hev1", 4 ) )
+- p_sys->i_aac_profile = FF_PROFILE_AAC_HE;
++ p_sys->i_aac_profile = AV_PROFILE_AAC_HE;
+ else if( !strncmp( psz_val, "ld", 2 ) )
+- p_sys->i_aac_profile = FF_PROFILE_AAC_LD;
++ p_sys->i_aac_profile = AV_PROFILE_AAC_LD;
+ else if( !strncmp( psz_val, "eld", 3 ) )
+- p_sys->i_aac_profile = FF_PROFILE_AAC_ELD;
++ p_sys->i_aac_profile = AV_PROFILE_AAC_ELD;
+ else
+ {
+ msg_Warn( p_enc, "unknown AAC profile requested, setting it to low" );
+- p_sys->i_aac_profile = FF_PROFILE_AAC_LOW;
++ p_sys->i_aac_profile = AV_PROFILE_AAC_LOW;
+ }
+ }
+ free( psz_val );
+@@ -1217,8 +1228,19 @@ static block_t *EncodeVideo( encoder_t *
+ frame->pict_type = 0;
+
+ frame->repeat_pict = p_pict->i_nb_fields - 2;
++#if LIBAVUTIL_VERSION_CHECK( 58, 7, 100 )
++ if (p_pict->b_progressive)
++ frame->flags &= ~AV_FRAME_FLAG_INTERLACED;
++ else
++ frame->flags |= AV_FRAME_FLAG_INTERLACED;
++ if (p_pict->b_top_field_first)
++ frame->flags |= AV_FRAME_FLAG_TOP_FIELD_FIRST;
++ else
++ frame->flags &= ~AV_FRAME_FLAG_TOP_FIELD_FIRST;
++#else
+ frame->interlaced_frame = !p_pict->b_progressive;
+ frame->top_field_first = !!p_pict->b_top_field_first;
++#endif
+
+ frame->format = p_sys->p_context->pix_fmt;
+ frame->width = p_sys->p_context->width;
+@@ -1473,9 +1495,8 @@ void EndVideoEnc( vlc_object_t *p_this )
+ av_frame_free( &p_sys->frame );
+
+ vlc_avcodec_lock();
+- avcodec_close( p_sys->p_context );
+- vlc_avcodec_unlock();
+ avcodec_free_context( &p_sys->p_context );
++ vlc_avcodec_unlock();
+
+
+ av_free( p_sys->p_interleave_buf );
+diff -Nuarp vlc-3.0.21.orig/modules/codec/avcodec/subtitle.c vlc-3.0.21/modules/codec/avcodec/subtitle.c
+--- vlc-3.0.21.orig/modules/codec/avcodec/subtitle.c 2025-11-17 18:16:27.475904814 -0500
++++ vlc-3.0.21/modules/codec/avcodec/subtitle.c 2025-11-17 18:17:09.718626249 -0500
+@@ -174,11 +174,11 @@ static subpicture_t *DecodeBlock(decoder
+ *block_ptr =
+ block = block_Realloc(block,
+ 0,
+- block->i_buffer + FF_INPUT_BUFFER_PADDING_SIZE);
++ block->i_buffer + AV_INPUT_BUFFER_PADDING_SIZE);
+ if (!block)
+ return NULL;
+- block->i_buffer -= FF_INPUT_BUFFER_PADDING_SIZE;
+- memset(&block->p_buffer[block->i_buffer], 0, FF_INPUT_BUFFER_PADDING_SIZE);
++ block->i_buffer -= AV_INPUT_BUFFER_PADDING_SIZE;
++ memset(&block->p_buffer[block->i_buffer], 0, AV_INPUT_BUFFER_PADDING_SIZE);
+
+ /* */
+ AVSubtitle subtitle;
+diff -Nuarp vlc-3.0.21.orig/modules/codec/avcodec/vaapi.c vlc-3.0.21/modules/codec/avcodec/vaapi.c
+--- vlc-3.0.21.orig/modules/codec/avcodec/vaapi.c 2024-06-05 11:56:07.000000000 -0400
++++ vlc-3.0.21/modules/codec/avcodec/vaapi.c 2025-11-17 18:17:09.718869643 -0500
+@@ -87,9 +87,9 @@ static int GetVaProfile(AVCodecContext *
+ count = 18;
+ break;
+ case AV_CODEC_ID_HEVC:
+- if (ctx->profile == FF_PROFILE_HEVC_MAIN)
++ if (ctx->profile == AV_PROFILE_HEVC_MAIN)
+ i_profile = VAProfileHEVCMain;
+- else if (ctx->profile == FF_PROFILE_HEVC_MAIN_10)
++ else if (ctx->profile == AV_PROFILE_HEVC_MAIN_10)
+ {
+ i_profile = VAProfileHEVCMain10;
+ i_vlc_chroma = VLC_CODEC_VAAPI_420_10BPP;
+@@ -103,10 +103,10 @@ static int GetVaProfile(AVCodecContext *
+ count = 5;
+ break;
+ case AV_CODEC_ID_VP9:
+- if (ctx->profile == FF_PROFILE_VP9_0)
++ if (ctx->profile == AV_PROFILE_VP9_0)
+ i_profile = VAProfileVP9Profile0;
+ #if VA_CHECK_VERSION( 0, 39, 0 )
+- else if (ctx->profile == FF_PROFILE_VP9_2)
++ else if (ctx->profile == AV_PROFILE_VP9_2)
+ {
+ i_profile = VAProfileVP9Profile2;
+ i_vlc_chroma = VLC_CODEC_VAAPI_420_10BPP;
+diff -Nuarp vlc-3.0.21.orig/modules/codec/avcodec/video.c vlc-3.0.21/modules/codec/avcodec/video.c
+--- vlc-3.0.21.orig/modules/codec/avcodec/video.c 2025-11-17 18:16:27.479151968 -0500
++++ vlc-3.0.21/modules/codec/avcodec/video.c 2025-11-17 15:17:39.571811094 -0500
+@@ -50,6 +50,13 @@
+ #include "../../packetizer/av1.h"
+ #include "../codec/cc.h"
+
++#if ! LIBAVCODEC_VERSION_CHECK(61, 33, 102) // Compatibility for profiles <= FFMPEG 8
++# define AV_PROFILE_UNKNOWN FF_PROFILE_UNKNOWN
++# define AV_LEVEL_UNKNOWN FF_LEVEL_UNKNOWN
++# define AV_INPUT_BUFFER_PADDING_SIZE FF_INPUT_BUFFER_PADDING_SIZE
++#endif
++
++
+ /*****************************************************************************
+ * decoder_sys_t : decoder descriptor
+ *****************************************************************************/
+@@ -200,8 +207,7 @@ static int lavc_GetVideoFormat(decoder_t
+ else if (ctx->time_base.num > 0 && ctx->time_base.den > 0)
+ {
+ fmt->i_frame_rate = ctx->time_base.den;
+- fmt->i_frame_rate_base = ctx->time_base.num
+- * __MAX(ctx->ticks_per_frame, 1);
++ fmt->i_frame_rate_base = ctx->time_base.num;
+ }
+
+ /* FIXME we should only set the known values and let the core decide
+@@ -323,12 +329,10 @@ static int lavc_UpdateVideoFormat(decode
+
+ /* always have date in fields/ticks units */
+ if(dec->p_sys->pts.i_divider_num)
+- date_Change(&dec->p_sys->pts, fmt_out.i_frame_rate *
+- __MAX(ctx->ticks_per_frame, 1),
++ date_Change(&dec->p_sys->pts, fmt_out.i_frame_rate,
+ fmt_out.i_frame_rate_base);
+ else
+- date_Init(&dec->p_sys->pts, fmt_out.i_frame_rate *
+- __MAX(ctx->ticks_per_frame, 1),
++ date_Init(&dec->p_sys->pts, fmt_out.i_frame_rate,
+ fmt_out.i_frame_rate_base);
+
+ fmt_out.p_palette = dec->fmt_out.video.p_palette;
+@@ -622,9 +626,9 @@ static int InitVideoDecCommon( decoder_t
+ p_dec->pf_flush = Flush;
+
+ /* XXX: Writing input format makes little sense. */
+- if( p_context->profile != FF_PROFILE_UNKNOWN )
++ if( p_context->profile != AV_PROFILE_UNKNOWN )
+ p_dec->fmt_in.i_profile = p_context->profile;
+- if( p_context->level != FF_LEVEL_UNKNOWN )
++ if( p_context->level != AV_LEVEL_UNKNOWN )
+ p_dec->fmt_in.i_level = p_context->level;
+ return VLC_SUCCESS;
+ }
+@@ -937,9 +941,11 @@ static vlc_tick_t interpolate_next_pts(
+ p_sys->pts.i_divider_num == 0 )
+ return VLC_TICK_INVALID;
+
++#if LIBAVCODEC_VERSION_CHECK( 60, 12, 100 )
++ int i_tick = p_context->codec_descriptor->props & AV_CODEC_PROP_FIELDS ? 2 : 1;
++#else
+ int i_tick = p_context->ticks_per_frame;
+- if( i_tick <= 0 )
+- i_tick = 1;
++#endif
+
+ /* interpolate the next PTS */
+ return date_Increment( &p_sys->pts, i_tick + frame->repeat_pict );
+@@ -1179,13 +1185,13 @@ static picture_t *DecodeBlock( decoder_t
+ eos_spotted = ( p_block->i_flags & BLOCK_FLAG_END_OF_SEQUENCE ) != 0;
+
+ p_block = block_Realloc( p_block, 0,
+- p_block->i_buffer + FF_INPUT_BUFFER_PADDING_SIZE );
++ p_block->i_buffer + AV_INPUT_BUFFER_PADDING_SIZE );
+ if( !p_block )
+ return NULL;
+- p_block->i_buffer -= FF_INPUT_BUFFER_PADDING_SIZE;
++ p_block->i_buffer -= AV_INPUT_BUFFER_PADDING_SIZE;
+ *pp_block = p_block;
+ memset( p_block->p_buffer + p_block->i_buffer, 0,
+- FF_INPUT_BUFFER_PADDING_SIZE );
++ AV_INPUT_BUFFER_PADDING_SIZE );
+ }
+
+ do
+@@ -1414,8 +1420,13 @@ static picture_t *DecodeBlock( decoder_t
+ /* Hack to force display of still pictures */
+ p_pic->b_force = p_sys->b_first_frame;
+ p_pic->i_nb_fields = 2 + frame->repeat_pict;
++#if LIBAVUTIL_VERSION_CHECK( 58, 7, 100 )
++ p_pic->b_progressive = !(frame->flags & AV_FRAME_FLAG_INTERLACED);
++ p_pic->b_top_field_first = !!(frame->flags & AV_FRAME_FLAG_TOP_FIELD_FIRST);
++#else
+ p_pic->b_progressive = !frame->interlaced_frame;
+ p_pic->b_top_field_first = frame->top_field_first;
++#endif
+
+ if (DecodeSidedata(p_dec, frame, p_pic))
+ i_pts = VLC_TICK_INVALID;
+@@ -1502,7 +1513,7 @@ static void ffmpeg_InitCodec( decoder_t
+ p_sys->p_context->extradata_size = i_size + 12;
+ p = p_sys->p_context->extradata =
+ av_malloc( p_sys->p_context->extradata_size +
+- FF_INPUT_BUFFER_PADDING_SIZE );
++ AV_INPUT_BUFFER_PADDING_SIZE );
+ if( !p )
+ return;
+
+@@ -1539,13 +1550,13 @@ static void ffmpeg_InitCodec( decoder_t
+ {
+ p_sys->p_context->extradata_size = i_size;
+ p_sys->p_context->extradata =
+- av_malloc( i_size + FF_INPUT_BUFFER_PADDING_SIZE );
++ av_malloc( i_size + AV_INPUT_BUFFER_PADDING_SIZE );
+ if( p_sys->p_context->extradata )
+ {
+ memcpy( p_sys->p_context->extradata,
+ p_dec->fmt_in.p_extra, i_size );
+ memset( p_sys->p_context->extradata + i_size,
+- 0, FF_INPUT_BUFFER_PADDING_SIZE );
++ 0, AV_INPUT_BUFFER_PADDING_SIZE );
+ }
+ }
+ }
+diff -Nuarp vlc-3.0.21.orig/modules/demux/avformat/demux.c vlc-3.0.21/modules/demux/avformat/demux.c
+--- vlc-3.0.21.orig/modules/demux/avformat/demux.c 2025-11-17 18:16:27.482817115 -0500
++++ vlc-3.0.21/modules/demux/avformat/demux.c 2025-11-17 15:40:29.653691401 -0500
+@@ -112,6 +112,18 @@ static vlc_fourcc_t CodecTagToFourcc( ui
+ #endif
+ }
+
++static inline void* GetStreamSideData(const AVStream *s, enum AVPacketSideDataType type)
++{
++#if LIBAVCODEC_VERSION_CHECK( 60, 29, 100 )
++ const AVCodecParameters *cp = s->codecpar;
++ const AVPacketSideData *psd =
++ av_packet_side_data_get(cp->coded_side_data, cp->nb_coded_side_data, type);
++ return psd ? psd->data : NULL;
++#else
++ return av_stream_get_side_data(s, type, NULL);
++#endif
++}
++
+ /*****************************************************************************
+ * Open
+ *****************************************************************************/
+@@ -138,7 +150,8 @@ static void get_rotation(es_format_t *fm
+ else
+ fmt->video.orientation = ORIENT_NORMAL;
+ }
+- int32_t *matrix = (int32_t *)av_stream_get_side_data(s, AV_PKT_DATA_DISPLAYMATRIX, NULL);
++
++ int32_t *matrix = GetStreamSideData(s, AV_PKT_DATA_DISPLAYMATRIX);
+ if( matrix ) {
+ angle = lround(av_display_rotation_get(matrix));
+
diff --git a/multimedia/vvdec/Makefile b/multimedia/vvdec/Makefile
index adef5181f1a0..4497a91de8c2 100644
--- a/multimedia/vvdec/Makefile
+++ b/multimedia/vvdec/Makefile
@@ -1,6 +1,6 @@
PORTNAME= vvdec
DISTVERSIONPREFIX= v
-DISTVERSION= 3.0.0
+DISTVERSION= 3.1.0
CATEGORIES= multimedia python
MAINTAINER= yuri@FreeBSD.org
@@ -29,6 +29,6 @@ CMAKE_TESTING_TARGET= test
CMAKE_ARGS+= -DVVDEC_ENABLE_LINK_TIME_OPT:BOOL=OFF
.endif
-# tests as of 3.0.0: 100% tests passed, 0 tests failed out of 239
+# tests as of 3.1.0: 100% tests passed, 0 tests failed out of 239
.include <bsd.port.mk>
diff --git a/multimedia/vvdec/distinfo b/multimedia/vvdec/distinfo
index 32f3333215cc..116240ab055d 100644
--- a/multimedia/vvdec/distinfo
+++ b/multimedia/vvdec/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1762888006
-SHA256 (fraunhoferhhi-vvdec-v3.0.0_GH0.tar.gz) = 090688c2f9beebd4e8a2ec197a5b9429803498cd3c91fbec62fe7718a8268114
-SIZE (fraunhoferhhi-vvdec-v3.0.0_GH0.tar.gz) = 1461638
+TIMESTAMP = 1763966252
+SHA256 (fraunhoferhhi-vvdec-v3.1.0_GH0.tar.gz) = e3e5093acfdcbfd2159f3d0166d451d7ccabd293ed30f3762b481c9c6c0a7512
+SIZE (fraunhoferhhi-vvdec-v3.1.0_GH0.tar.gz) = 1491938
diff --git a/multimedia/vvdec/pkg-plist b/multimedia/vvdec/pkg-plist
index 4281dc998a5d..3bf2fb504216 100644
--- a/multimedia/vvdec/pkg-plist
+++ b/multimedia/vvdec/pkg-plist
@@ -9,5 +9,5 @@ lib/cmake/vvdec/vvdecTargets-shared-%%CMAKE_BUILD_TYPE%%.cmake
lib/cmake/vvdec/vvdecTargets-shared.cmake
lib/libvvdec.so
lib/libvvdec.so.3
-lib/libvvdec.so.3.0.0
+lib/libvvdec.so.3.1.0
libdata/pkgconfig/libvvdec.pc
diff --git a/multimedia/x265/Makefile b/multimedia/x265/Makefile
index 0f84465e8d1b..6ddc09a62e5a 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_DEFINE_powerpc64= ALTIVEC
+OPTIONS_DEFINE_powerpc64le= ${OPTIONS_DEFINE_powerpc64}
OPTIONS_DEFAULT= HI10P HI12P HI8P OPTIMIZED_FLAGS
+OPTIONS_DEFAULT_powerpc64le= 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"
@@ -53,12 +55,7 @@ VMAF_CMAKE_BOOL= ENABLE_LIBVMAF
.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 +68,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 +83,39 @@ 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 ${ARCH} == armv7
+CMAKE_ARGS+= -DENABLE_NEON:BOOL=true
+.endif
-.if ${b} != 8
-ASSEMBLY= false
+.if ${PORT_OPTIONS:MALTIVEC}
+CMAKE_ARGS+= -DENABLE_ALTIVEC=true \
+ -DCPU_POWER8=true
.else
-ASSEMBLY= true
+CMAKE_ARGS+= -DENABLE_ALTIVEC=false \
+ -DCPU_POWER8=false
.endif
-post-patch:
- ${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|' ${WRKSRC}/x265.h
-
-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 || ${ARCH:Mpowerpc64*}) && $b != 8
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 \
- -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
+ -DMAIN$b:BOOL=true -DENABLE_ASSEMBLY:BOOL=${ASSEMBLY} \
+ -DENABLE_ALTIVEC:BOOL=${ASSEMBLY} \
+ -DCPU_POWER8:BOOL=${ASSEMBLY} -DEXPORT_C_API:BOOL=false \
+ -DENABLE_CLI=false
+ ${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 +126,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 &param, 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
diff --git a/multimedia/youtui/Makefile b/multimedia/youtui/Makefile
index 594c082d2929..7fe46dbcb9a0 100644
--- a/multimedia/youtui/Makefile
+++ b/multimedia/youtui/Makefile
@@ -1,7 +1,6 @@
PORTNAME= youtui
DISTVERSIONPREFIX= youtui/v
-DISTVERSION= 0.0.26
-PORTREVISION= 1
+DISTVERSION= 0.0.30
CATEGORIES= multimedia
MAINTAINER= yuri@FreeBSD.org
@@ -552,7 +551,7 @@ CARGO_CRATES= ab_glyph-0.2.29 \
tokio-native-tls-0.3.1 \
tokio-rustls-0.26.2 \
tokio-stream-0.1.17 \
- tokio-util-0.7.15 \
+ tokio-util-0.7.17 \
toml-0.8.23 \
toml_datetime-0.6.11 \
toml_edit-0.19.15 \
@@ -695,7 +694,7 @@ CARGO_CRATES= ab_glyph-0.2.29 \
yoke-0.8.0 \
yoke-derive-0.7.5 \
yoke-derive-0.8.0 \
- youtui-vendored-rusty_ytdl-0.7.4-youtui-vendored.2 \
+ youtui-vendored-rusty_ytdl-0.7.4-youtui-vendored.3 \
zbus-3.15.2 \
zbus_macros-3.15.2 \
zbus_names-2.6.1 \
diff --git a/multimedia/youtui/distinfo b/multimedia/youtui/distinfo
index 4adf1195ff1e..3e122666191c 100644
--- a/multimedia/youtui/distinfo
+++ b/multimedia/youtui/distinfo
@@ -1,4 +1,4 @@
-TIMESTAMP = 1762631144
+TIMESTAMP = 1763966167
SHA256 (rust/crates/ab_glyph-0.2.29.crate) = ec3672c180e71eeaaac3a541fbbc5f5ad4def8b747c595ad30d674e43049f7b0
SIZE (rust/crates/ab_glyph-0.2.29.crate) = 20011
SHA256 (rust/crates/ab_glyph_rasterizer-0.1.8.crate) = c71b1793ee61086797f5c80b6efa2b8ffa6d5dd703f118545808a7f2e27f7046
@@ -1063,8 +1063,8 @@ SHA256 (rust/crates/tokio-rustls-0.26.2.crate) = 8e727b36a1a0e8b74c376ac2211e40c
SIZE (rust/crates/tokio-rustls-0.26.2.crate) = 31655
SHA256 (rust/crates/tokio-stream-0.1.17.crate) = eca58d7bba4a75707817a2c44174253f9236b2d5fbd055602e9d5c07c139a047
SIZE (rust/crates/tokio-stream-0.1.17.crate) = 38477
-SHA256 (rust/crates/tokio-util-0.7.15.crate) = 66a539a9ad6d5d281510d5bd368c973d636c02dbf8a67300bfb6b950696ad7df
-SIZE (rust/crates/tokio-util-0.7.15.crate) = 124255
+SHA256 (rust/crates/tokio-util-0.7.17.crate) = 2efa149fe76073d6e8fd97ef4f4eca7b67f599660115591483572e406e165594
+SIZE (rust/crates/tokio-util-0.7.17.crate) = 133898
SHA256 (rust/crates/toml-0.8.23.crate) = dc1beb996b9d83529a9e75c17a1686767d148d70663143c7854d8b4a09ced362
SIZE (rust/crates/toml-0.8.23.crate) = 36050
SHA256 (rust/crates/toml_datetime-0.6.11.crate) = 22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c
@@ -1349,8 +1349,8 @@ SHA256 (rust/crates/yoke-derive-0.7.5.crate) = 2380878cad4ac9aac1e2435f3eb4020e8
SIZE (rust/crates/yoke-derive-0.7.5.crate) = 7525
SHA256 (rust/crates/yoke-derive-0.8.0.crate) = 38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6
SIZE (rust/crates/yoke-derive-0.8.0.crate) = 7521
-SHA256 (rust/crates/youtui-vendored-rusty_ytdl-0.7.4-youtui-vendored.2.crate) = 068fcb7e346f9e740d7cab597f544ea5d3f77627ab6d8c6efcd6b202060213d6
-SIZE (rust/crates/youtui-vendored-rusty_ytdl-0.7.4-youtui-vendored.2.crate) = 73962
+SHA256 (rust/crates/youtui-vendored-rusty_ytdl-0.7.4-youtui-vendored.3.crate) = 2223a93e0748d54003f2a0181bba9e1b97e6f6f12072bb58e20e62abdb86e84a
+SIZE (rust/crates/youtui-vendored-rusty_ytdl-0.7.4-youtui-vendored.3.crate) = 77219
SHA256 (rust/crates/zbus-3.15.2.crate) = 675d170b632a6ad49804c8cf2105d7c31eddd3312555cffd4b740e08e97c25e6
SIZE (rust/crates/zbus-3.15.2.crate) = 151554
SHA256 (rust/crates/zbus_macros-3.15.2.crate) = 7131497b0f887e8061b430c530240063d33bf9455fa34438f388a245da69e0a5
@@ -1389,5 +1389,5 @@ SHA256 (rust/crates/zvariant_derive-3.15.2.crate) = 37c24dc0bed72f5f90d1f8bb5b07
SIZE (rust/crates/zvariant_derive-3.15.2.crate) = 10936
SHA256 (rust/crates/zvariant_utils-1.0.1.crate) = 7234f0d811589db492d16893e3f21e8e2fd282e6d01b0cddee310322062cc200
SIZE (rust/crates/zvariant_utils-1.0.1.crate) = 6223
-SHA256 (nick42d-youtui-youtui-v0.0.26_GH0.tar.gz) = 4508dc304a4a2dcb22a34bd446106351633ec6b1d0fdf14848693d29504ad308
-SIZE (nick42d-youtui-youtui-v0.0.26_GH0.tar.gz) = 5387428
+SHA256 (nick42d-youtui-youtui-v0.0.30_GH0.tar.gz) = 2cd7353bcd0f89af53bbe4274bb59c391e18dc73d137328a6baf7ef12e141f4c
+SIZE (nick42d-youtui-youtui-v0.0.30_GH0.tar.gz) = 5391470