git: 874d8e4b5d2e - main - multimedia/av1an: unbreak build with ffmpeg 7.0
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 11 May 2024 16:04:49 UTC
The branch main has been updated by jbeich:
URL: https://cgit.FreeBSD.org/ports/commit/?id=874d8e4b5d2e2a0152e555b8e09f573a95b255ab
commit 874d8e4b5d2e2a0152e555b8e09f573a95b255ab
Author: Jan Beich <jbeich@FreeBSD.org>
AuthorDate: 2024-05-11 13:58:44 +0000
Commit: Jan Beich <jbeich@FreeBSD.org>
CommitDate: 2024-05-11 16:03:30 +0000
multimedia/av1an: unbreak build with ffmpeg 7.0
error[E0425]: cannot find value `AV_CH_LAYOUT_NATIVE` in this scope
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/util/channel_layout.rs:31:39
|
31 | const NATIVE = AV_CH_LAYOUT_NATIVE;
| ^^^^^^^^^^^^^^^^^^^ help: a constant with a similar name exists: `AV_CH_LAYOUT_STEREO`
|
::: ../target/x86_64-unknown-freebsd/release/build/ffmpeg-sys-the-third-ec468502176024bc/out/bindings.rs:20777:1
|
20777 | pub const AV_CH_LAYOUT_STEREO: libc::c_ulonglong = 3;
| ------------------------------------------------ similarly named constant `AV_CH_LAYOUT_STEREO` defined here
error[E0425]: cannot find value `AV_PIX_FMT_XVMC` in this scope
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/util/format/pixel.rs:1040:28
|
1040 | Pixel::XVMC => AV_PIX_FMT_XVMC,
| ^^^^^^^^^^^^^^^ help: a unit variant with a similar name exists: `AV_PIX_FMT_NV12`
|
::: ../target/x86_64-unknown-freebsd/release/build/ffmpeg-sys-the-third-ec468502176024bc/out/bindings.rs:4854:3
|
4854 | AV_PIX_FMT_NV12 = 23,
| --------------- similarly named unit variant `AV_PIX_FMT_NV12` defined here
error[E0425]: cannot find value `AV_OPT_TYPE_CHANNEL_LAYOUT` in this scope
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/util/option/mod.rs:88:36
|
88 | Type::ChannelLayout => AV_OPT_TYPE_CHANNEL_LAYOUT,
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: a unit variant with a similar name exists: `AV_OPT_TYPE_CHLAYOUT`
|
::: ../target/x86_64-unknown-freebsd/release/build/ffmpeg-sys-the-third-ec468502176024bc/out/bindings.rs:13179:3
|
13179 | AV_OPT_TYPE_CHLAYOUT = 19,
| -------------------- similarly named unit variant `AV_OPT_TYPE_CHLAYOUT` defined here
error[E0425]: cannot find value `AV_CODEC_ID_AYUV` in this scope
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/codec/id.rs:1514:25
|
1514 | Id::AYUV => AV_CODEC_ID_AYUV,
| ^^^^^^^^^^^^^^^^ help: a unit variant with a similar name exists: `AV_CODEC_ID_CYUV`
|
::: ../target/x86_64-unknown-freebsd/release/build/ffmpeg-sys-the-third-ec468502176024bc/out/bindings.rs:7538:3
|
7538 | AV_CODEC_ID_CYUV = 26,
| ---------------- similarly named unit variant `AV_CODEC_ID_CYUV` defined here
error[E0425]: cannot find function `av_get_channel_layout_nb_channels` in this scope
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/util/channel_layout.rs:67:18
|
67 | unsafe { av_get_channel_layout_nb_channels(self.bits()) }
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope
error[E0425]: cannot find function `av_get_default_channel_layout` in this scope
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/util/channel_layout.rs:72:47
|
72 | ChannelLayout::from_bits_truncate(av_get_default_channel_layout(number) as c_ulonglong)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope
error[E0609]: no field `coded_picture_number` on type `sys::AVFrame`
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/util/frame/video.rs:178:35
|
178 | unsafe { (*self.as_ptr()).coded_picture_number as usize }
| ^^^^^^^^^^^^^^^^^^^^ unknown field
|
= note: available fields are: `data`, `linesize`, `extended_data`, `width`, `height` ... and 40 others
error[E0609]: no field `display_picture_number` on type `sys::AVFrame`
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/util/frame/video.rs:183:35
|
183 | unsafe { (*self.as_ptr()).display_picture_number as usize }
| ^^^^^^^^^^^^^^^^^^^^^^ unknown field
|
= note: available fields are: `data`, `linesize`, `extended_data`, `width`, `height` ... and 40 others
error[E0609]: no field `channel_layout` on type `sys::AVFrame`
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/util/frame/audio.rs:66:69
|
66 | unsafe { ChannelLayout::from_bits_truncate((*self.as_ptr()).channel_layout as c_ulonglong) }
| ^^^^^^^^^^^^^^ unknown field
|
= note: available fields are: `data`, `linesize`, `extended_data`, `width`, `height` ... and 40 others
error[E0609]: no field `channel_layout` on type `sys::AVFrame`
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/util/frame/audio.rs:72:34
|
72 | (*self.as_mut_ptr()).channel_layout = value.bits() as u64;
| ^^^^^^^^^^^^^^ unknown field
|
= note: available fields are: `data`, `linesize`, `extended_data`, `width`, `height` ... and 40 others
error[E0609]: no field `channels` on type `sys::AVFrame`
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/util/frame/audio.rs:78:35
|
78 | unsafe { (*self.as_ptr()).channels as u16 }
| ^^^^^^^^ unknown field
|
= note: available fields are: `data`, `linesize`, `extended_data`, `width`, `height` ... and 40 others
error[E0609]: no field `channels` on type `sys::AVFrame`
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/util/frame/audio.rs:84:34
|
84 | (*self.as_mut_ptr()).channels = i32::from(value);
| ^^^^^^^^ unknown field
|
= note: available fields are: `data`, `linesize`, `extended_data`, `width`, `height` ... and 40 others
error[E0609]: no field `pkt_duration` on type `sys::AVFrame`
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/util/frame/mod.rs:82:44
|
82 | duration: (*self.as_ptr()).pkt_duration as i64,
| ^^^^^^^^^^^^ unknown field
|
help: a field with a similar name exists
|
82 | duration: (*self.as_ptr()).duration as i64,
| ~~~~~~~~
error[E0425]: cannot find function `av_opt_set_channel_layout` in this scope
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/util/option/traits.rs:137:20
|
137 | check!(av_opt_set_channel_layout(
| ^^^^^^^^^^^^^^^^^^^^^^^^^ help: a function with a similar name exists: `av_opt_set_chlayout`
|
::: ../target/x86_64-unknown-freebsd/release/build/ffmpeg-sys-the-third-ec468502176024bc/out/bindings.rs:13786:3
|
13786 | / pub fn av_opt_set_chlayout(
13787 | | obj: *mut libc::c_void,
13788 | | name: *const libc::c_char,
13789 | | layout: *const AVChannelLayout,
13790 | | search_flags: libc::c_int,
13791 | | ) -> libc::c_int;
| |__________________- similarly named function `av_opt_set_chlayout` defined here
error[E0609]: no field `channel_layouts` on type `sys::AVCodec`
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/codec/audio.rs:41:39
|
41 | if (*self.codec.as_ptr()).channel_layouts.is_null() {
| ^^^^^^^^^^^^^^^ unknown field
|
help: a field with a similar name exists
|
41 | if (*self.codec.as_ptr()).ch_layouts.is_null() {
| ~~~~~~~~~~
error[E0609]: no field `channel_layouts` on type `sys::AVCodec`
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/codec/audio.rs:45:44
|
45 | (*self.codec.as_ptr()).channel_layouts,
| ^^^^^^^^^^^^^^^ unknown field
|
help: a field with a similar name exists
|
45 | (*self.codec.as_ptr()).ch_layouts,
| ~~~~~~~~~~
error[E0609]: no field `slice_count` on type `sys::AVCodecContext`
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/codec/decoder/video.rs:89:34
|
89 | (*self.as_mut_ptr()).slice_count = value as c_int;
| ^^^^^^^^^^^ unknown field
|
= note: available fields are: `av_class`, `log_level_offset`, `codec_type`, `codec`, `codec_id` ... and 95 others
error[E0609]: no field `channels` on type `sys::AVCodecContext`
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/codec/decoder/audio.rs:51:35
|
51 | unsafe { (*self.as_ptr()).channels as u16 }
| ^^^^^^^^ unknown field
|
= note: available fields are: `av_class`, `log_level_offset`, `codec_type`, `codec`, `codec_id` ... and 95 others
error[E0609]: no field `frame_number` on type `sys::AVCodecContext`
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/codec/decoder/audio.rs:65:35
|
65 | unsafe { (*self.as_ptr()).frame_number as usize }
| ^^^^^^^^^^^^ unknown field
|
= note: available fields are: `av_class`, `log_level_offset`, `codec_type`, `codec`, `codec_id` ... and 95 others
error[E0609]: no field `channel_layout` on type `sys::AVCodecContext`
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/codec/decoder/audio.rs:73:69
|
73 | unsafe { ChannelLayout::from_bits_truncate((*self.as_ptr()).channel_layout) }
| ^^^^^^^^^^^^^^ unknown field
|
= note: available fields are: `av_class`, `log_level_offset`, `codec_type`, `codec`, `codec_id` ... and 95 others
error[E0609]: no field `channel_layout` on type `sys::AVCodecContext`
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/codec/decoder/audio.rs:78:34
|
78 | (*self.as_mut_ptr()).channel_layout = value.bits();
| ^^^^^^^^^^^^^^ unknown field
|
= note: available fields are: `av_class`, `log_level_offset`, `codec_type`, `codec`, `codec_id` ... and 95 others
error[E0609]: no field `request_channel_layout` on type `sys::AVCodecContext`
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/codec/decoder/audio.rs:84:34
|
84 | (*self.as_mut_ptr()).request_channel_layout = value.bits();
| ^^^^^^^^^^^^^^^^^^^^^^ unknown field
|
= note: available fields are: `av_class`, `log_level_offset`, `codec_type`, `codec`, `codec_id` ... and 95 others
error[E0609]: no field `channel_layout` on type `sys::AVCodecContext`
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/codec/encoder/audio.rs:98:34
|
98 | (*self.as_mut_ptr()).channel_layout = value.bits();
| ^^^^^^^^^^^^^^ unknown field
|
= note: available fields are: `av_class`, `log_level_offset`, `codec_type`, `codec`, `codec_id` ... and 95 others
error[E0609]: no field `channel_layout` on type `sys::AVCodecContext`
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/codec/encoder/audio.rs:103:69
|
103 | unsafe { ChannelLayout::from_bits_truncate((*self.as_ptr()).channel_layout) }
| ^^^^^^^^^^^^^^ unknown field
|
= note: available fields are: `av_class`, `log_level_offset`, `codec_type`, `codec`, `codec_id` ... and 95 others
error[E0609]: no field `channels` on type `sys::AVCodecContext`
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/codec/encoder/audio.rs:108:34
|
108 | (*self.as_mut_ptr()).channels = value;
| ^^^^^^^^ unknown field
|
= note: available fields are: `av_class`, `log_level_offset`, `codec_type`, `codec`, `codec_id` ... and 95 others
error[E0609]: no field `channels` on type `sys::AVCodecContext`
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/codec/encoder/audio.rs:113:35
|
113 | unsafe { (*self.as_ptr()).channels as u16 }
| ^^^^^^^^ unknown field
|
= note: available fields are: `av_class`, `log_level_offset`, `codec_type`, `codec`, `codec_id` ... and 95 others
error[E0425]: cannot find function `swr_alloc_set_opts` in this scope
--> cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/software/resampling/context.rs:71:23
|
71 | let ptr = swr_alloc_set_opts(
| ^^^^^^^^^^^^^^^^^^ help: a function with a similar name exists: `swr_alloc_set_opts2`
|
::: ../target/x86_64-unknown-freebsd/release/build/ffmpeg-sys-the-third-ec468502176024bc/out/bindings.rs:23165:3
|
23165 | / pub fn swr_alloc_set_opts2(
23166 | | ps: *mut *mut SwrContext,
23167 | | out_ch_layout: *const AVChannelLayout,
23168 | | out_sample_fmt: AVSampleFormat,
... |
23174 | | log_ctx: *mut libc::c_void,
23175 | | ) -> libc::c_int;
| |__________________- similarly named function `swr_alloc_set_opts2` defined here
Some errors have detailed explanations: E0425, E0609.
Reported by: antoine (via bug 278705 exp-run)
---
multimedia/av1an/Makefile | 2 +-
multimedia/av1an/Makefile.crates | 9 +--
multimedia/av1an/distinfo | 18 ++---
multimedia/av1an/files/patch-ffmpeg | 4 +-
multimedia/av1an/files/patch-ffmpeg7 | 146 +++++++++++++++++++++++++++++++++++
5 files changed, 161 insertions(+), 18 deletions(-)
diff --git a/multimedia/av1an/Makefile b/multimedia/av1an/Makefile
index 27a34c6063f9..5d07e03ce425 100644
--- a/multimedia/av1an/Makefile
+++ b/multimedia/av1an/Makefile
@@ -1,6 +1,6 @@
PORTNAME= av1an
DISTVERSION= 0.4.2
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= multimedia
MAINTAINER= jbeich@FreeBSD.org
diff --git a/multimedia/av1an/Makefile.crates b/multimedia/av1an/Makefile.crates
index 36c31f1b1911..5f91d16549f3 100644
--- a/multimedia/av1an/Makefile.crates
+++ b/multimedia/av1an/Makefile.crates
@@ -23,9 +23,9 @@ CARGO_CRATES= addr2line-0.21.0 \
av-scenechange-0.10.0 \
av1-grain-0.2.3 \
backtrace-0.3.69 \
- bindgen-0.64.0 \
+ bindgen-0.69.4 \
bitflags-1.3.2 \
- bitflags-2.4.1 \
+ bitflags-2.5.0 \
bitstream-io-2.2.0 \
built-0.7.1 \
bumpalo-3.14.0 \
@@ -54,8 +54,8 @@ CARGO_CRATES= addr2line-0.21.0 \
encode_unicode-0.3.6 \
equivalent-1.0.1 \
errno-0.3.8 \
- ffmpeg-sys-the-third-1.1.1+ffmpeg-6.0 \
- ffmpeg-the-third-1.2.2+ffmpeg-6.0 \
+ ffmpeg-sys-the-third-2.0.0+ffmpeg-7.0 \
+ ffmpeg-the-third-2.0.1+ffmpeg-7.0 \
flexi_logger-0.27.3 \
form_urlencoded-1.2.1 \
getrandom-0.2.12 \
@@ -115,7 +115,6 @@ CARGO_CRATES= addr2line-0.21.0 \
parking_lot_core-0.9.9 \
paste-1.0.14 \
path_abs-0.5.1 \
- peeking_take_while-0.1.2 \
percent-encoding-2.3.1 \
pin-project-lite-0.2.13 \
pkg-config-0.3.28 \
diff --git a/multimedia/av1an/distinfo b/multimedia/av1an/distinfo
index 202ad73539e4..96cf9b4ce605 100644
--- a/multimedia/av1an/distinfo
+++ b/multimedia/av1an/distinfo
@@ -49,12 +49,12 @@ SHA256 (rust/crates/av1-grain-0.2.3.crate) = 6678909d8c5d46a42abcf571271e15fdbc0
SIZE (rust/crates/av1-grain-0.2.3.crate) = 34703
SHA256 (rust/crates/backtrace-0.3.69.crate) = 2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837
SIZE (rust/crates/backtrace-0.3.69.crate) = 77299
-SHA256 (rust/crates/bindgen-0.64.0.crate) = c4243e6031260db77ede97ad86c27e501d646a27ab57b59a574f725d98ab1fb4
-SIZE (rust/crates/bindgen-0.64.0.crate) = 204700
+SHA256 (rust/crates/bindgen-0.69.4.crate) = a00dc851838a2120612785d195287475a3ac45514741da670b735818822129a0
+SIZE (rust/crates/bindgen-0.69.4.crate) = 221092
SHA256 (rust/crates/bitflags-1.3.2.crate) = bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a
SIZE (rust/crates/bitflags-1.3.2.crate) = 23021
-SHA256 (rust/crates/bitflags-2.4.1.crate) = 327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07
-SIZE (rust/crates/bitflags-2.4.1.crate) = 37043
+SHA256 (rust/crates/bitflags-2.5.0.crate) = cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1
+SIZE (rust/crates/bitflags-2.5.0.crate) = 43821
SHA256 (rust/crates/bitstream-io-2.2.0.crate) = 06c9989a51171e2e81038ab168b6ae22886fe9ded214430dbb4f41c28cf176da
SIZE (rust/crates/bitstream-io-2.2.0.crate) = 34113
SHA256 (rust/crates/built-0.7.1.crate) = 38d17f4d6e4dc36d1a02fbedc2753a096848e7c1b0772f7654eab8e2c927dd53
@@ -111,10 +111,10 @@ SHA256 (rust/crates/equivalent-1.0.1.crate) = 5443807d6dff69373d433ab9ef5378ad8d
SIZE (rust/crates/equivalent-1.0.1.crate) = 6615
SHA256 (rust/crates/errno-0.3.8.crate) = a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245
SIZE (rust/crates/errno-0.3.8.crate) = 10645
-SHA256 (rust/crates/ffmpeg-sys-the-third-1.1.1+ffmpeg-6.0.crate) = 94a4b2e9c02074c0ee85661b23b3ac849bad6afc554b503c183975f5e2e0d3de
-SIZE (rust/crates/ffmpeg-sys-the-third-1.1.1+ffmpeg-6.0.crate) = 14894
-SHA256 (rust/crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0.crate) = 301c55f432cce71d0cc5266e8e70e69cc7a865f8aa8785c44cb56c3935a13715
-SIZE (rust/crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0.crate) = 89833
+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.27.3.crate) = 2ac35b454b60e1836602173e2eb7ef531173388c0212e02ec7f9fac086159ee5
SIZE (rust/crates/flexi_logger-0.27.3.crate) = 216178
SHA256 (rust/crates/form_urlencoded-1.2.1.crate) = e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456
@@ -233,8 +233,6 @@ SHA256 (rust/crates/paste-1.0.14.crate) = de3145af08024dea9fa9914f381a17b8fc6034
SIZE (rust/crates/paste-1.0.14.crate) = 18157
SHA256 (rust/crates/path_abs-0.5.1.crate) = 05ef02f6342ac01d8a93b65f96db53fe68a92a15f41144f97fb00a9e669633c3
SIZE (rust/crates/path_abs-0.5.1.crate) = 31072
-SHA256 (rust/crates/peeking_take_while-0.1.2.crate) = 19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099
-SIZE (rust/crates/peeking_take_while-0.1.2.crate) = 6697
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.13.crate) = 8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58
diff --git a/multimedia/av1an/files/patch-ffmpeg b/multimedia/av1an/files/patch-ffmpeg
index f9a5ee9fd73b..e93e44713a00 100644
--- a/multimedia/av1an/files/patch-ffmpeg
+++ b/multimedia/av1an/files/patch-ffmpeg
@@ -22,8 +22,8 @@ help: a similar name exists in the module
23 | EPROTONOSUPPORT, EPROTOTYPE, ERANGE, EROFS, ESPIPE, ESRCH, VTIME, ETIMEDOUT, ETXTBSY,
| ~~~~~
---- cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/util/error.rs.orig 2006-07-24 01:21:28 UTC
-+++ cargo-crates/ffmpeg-the-third-1.2.2+ffmpeg-6.0/src/util/error.rs
+--- 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,
diff --git a/multimedia/av1an/files/patch-ffmpeg7 b/multimedia/av1an/files/patch-ffmpeg7
new file mode 100644
index 000000000000..52182f6f3345
--- /dev/null
+++ b/multimedia/av1an/files/patch-ffmpeg7
@@ -0,0 +1,146 @@
+https://github.com/master-of-zen/Av1an/commit/6db39663755a
+
+--- Cargo.lock.orig 2024-02-13 12:45:43 UTC
++++ Cargo.lock
+@@ -311,22 +311,22 @@ name = "bindgen"
+
+ [[package]]
+ name = "bindgen"
+-version = "0.64.0"
++version = "0.69.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c4243e6031260db77ede97ad86c27e501d646a27ab57b59a574f725d98ab1fb4"
++checksum = "a00dc851838a2120612785d195287475a3ac45514741da670b735818822129a0"
+ dependencies = [
+- "bitflags 1.3.2",
++ "bitflags 2.5.0",
+ "cexpr",
+ "clang-sys",
++ "itertools",
+ "lazy_static",
+ "lazycell",
+- "peeking_take_while",
+ "proc-macro2",
+ "quote",
+ "regex",
+ "rustc-hash",
+ "shlex",
+- "syn 1.0.109",
++ "syn 2.0.48",
+ ]
+
+ [[package]]
+@@ -337,9 +337,9 @@ name = "bitflags"
+
+ [[package]]
+ name = "bitflags"
+-version = "2.4.1"
++version = "2.5.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07"
++checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
+
+ [[package]]
+ name = "bitstream-io"
+@@ -581,25 +581,24 @@ name = "ffmpeg-sys-the-third"
+
+ [[package]]
+ name = "ffmpeg-sys-the-third"
+-version = "1.1.1+ffmpeg-6.0"
++version = "2.0.0+ffmpeg-7.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "94a4b2e9c02074c0ee85661b23b3ac849bad6afc554b503c183975f5e2e0d3de"
++checksum = "a82bfdb0a7925996707f0a7dc37b2f3251ff5a15d26e78c586adb60c240dedc5"
+ dependencies = [
+ "bindgen",
+ "cc",
+ "libc",
+- "num_cpus",
+ "pkg-config",
+ "vcpkg",
+ ]
+
+ [[package]]
+ name = "ffmpeg-the-third"
+-version = "1.2.2+ffmpeg-6.0"
++version = "2.0.1+ffmpeg-7.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "301c55f432cce71d0cc5266e8e70e69cc7a865f8aa8785c44cb56c3935a13715"
++checksum = "c4aa99eb55979d5c1db3b0b7a807a5e50dda07f5f6c2dbc6e9b50c205f611646"
+ dependencies = [
+- "bitflags 1.3.2",
++ "bitflags 2.5.0",
+ "ffmpeg-sys-the-third",
+ "libc",
+ "serde",
+@@ -652,7 +651,7 @@ dependencies = [
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "fbf97ba92db08df386e10c8ede66a2a0369bd277090afd8710e19e38de9ec0cd"
+ dependencies = [
+- "bitflags 2.4.1",
++ "bitflags 2.5.0",
+ "libc",
+ "libgit2-sys",
+ "log",
+@@ -1143,12 +1142,6 @@ dependencies = [
+ ]
+
+ [[package]]
+-name = "peeking_take_while"
+-version = "0.1.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
+-
+-[[package]]
+ name = "percent-encoding"
+ version = "2.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -1420,7 +1413,7 @@ dependencies = [
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "322394588aaf33c24007e8bb3238ee3e4c5c09c084ab32bc73890b99ff326bca"
+ dependencies = [
+- "bitflags 2.4.1",
++ "bitflags 2.5.0",
+ "errno",
+ "libc",
+ "linux-raw-sys",
+--- av1an-core/Cargo.toml.orig 2024-02-13 12:45:43 UTC
++++ av1an-core/Cargo.toml
+@@ -63,7 +63,7 @@ package = "ffmpeg-the-third"
+
+ [dependencies.ffmpeg]
+ package = "ffmpeg-the-third"
+-version = "1.2.0"
++version = "2.0.1"
+ features = ["serialize"]
+
+ [dependencies.plotters]
+--- av1an-core/src/ffmpeg.rs.orig 2024-02-13 12:45:43 UTC
++++ av1an-core/src/ffmpeg.rs
+@@ -51,6 +51,7 @@ pub fn num_frames(source: &Path) -> Result<usize, ffmp
+ Ok(
+ ictx
+ .packets()
++ .filter_map(Result::ok)
+ .filter(|(stream, _)| stream.index() == video_stream_index)
+ .count(),
+ )
+@@ -122,6 +123,7 @@ pub fn get_keyframes(source: &Path) -> Result<Vec<usiz
+
+ let kfs = ictx
+ .packets()
++ .filter_map(Result::ok)
+ .filter(|(stream, _)| stream.index() == video_stream_index)
+ .map(|(_, packet)| packet)
+ .enumerate()
+--- av1an/Cargo.toml.orig 2024-02-13 12:45:43 UTC
++++ av1an/Cargo.toml
+@@ -39,7 +39,7 @@ package = "ffmpeg-the-third"
+
+ [dependencies.ffmpeg]
+ package = "ffmpeg-the-third"
+-version = "1.2.0"
++version = "2.0.1"
+ features = ["serialize"]
+
+ [features]