summaryrefslogtreecommitdiff
path: root/media-video
diff options
context:
space:
mode:
Diffstat (limited to 'media-video')
-rw-r--r--media-video/Manifest.gzbin24557 -> 24558 bytes
-rw-r--r--media-video/ffmpeg/Manifest3
-rw-r--r--media-video/ffmpeg/ffmpeg-6.0.1-r3.ebuild3
-rw-r--r--media-video/ffmpeg/files/ffmpeg-6.0.1-libjxl-0.9.patch112
4 files changed, 116 insertions, 2 deletions
diff --git a/media-video/Manifest.gz b/media-video/Manifest.gz
index 9784fa5ee741..e36d50697f93 100644
--- a/media-video/Manifest.gz
+++ b/media-video/Manifest.gz
Binary files differ
diff --git a/media-video/ffmpeg/Manifest b/media-video/ffmpeg/Manifest
index 4919c8cc24aa..795310014568 100644
--- a/media-video/ffmpeg/Manifest
+++ b/media-video/ffmpeg/Manifest
@@ -17,6 +17,7 @@ AUX ffmpeg-6.0-fix-lto-type-mismatch.patch 1782 BLAKE2B 4cafd0244136c645e8da072b
AUX ffmpeg-6.0-libplacebo-remove-deprecated-field.patch 4733 BLAKE2B eba46b33bdbb387b90f89491aa638cb941e7fb72d522945394e540fdfadaf83efc6837a13eefedc285b6bce3ef4443ef32f2c04754209c4a47c4d2216574d597 SHA512 0673dab6043466eecf79048f1da8879d89a014b207910bfd6ec6ebf151fe77edf35460035583f803133969d90ab202ce31aaddf322501ac4e34e1270a66f09fe
AUX ffmpeg-6.0-wint-conversion-vulkan.patch 1647 BLAKE2B 3d0f0de065a615f199cd3a3074f5038bf6652f41afa8f8754ade5f0112327f069d4cf8eddf3bc25139122d258caceb102dad7c2825b99f35c273e993caae817d SHA512 1fa7506eb393e44ba98ebaea1e98831912279d365ef8909f247913b912973f7782cb0ad869da4244b6a09b91f5cbb5a5207cbc5a4de8ec61fc313714ea663a80
AUX ffmpeg-6.0.1-alignment.patch 5048 BLAKE2B 9a9345b84b68442c97258a71b49ed773e40d985ea8f2525a8749a7562d787634ff0b0e5e1d257e94f7cf68fab81790ca2f0b64cfcb27453e1e6912de30c560e9 SHA512 575b71b2d69b0c7b4e0498b9375dad55945adc7178c72ed5fd12addeae3ffb0081ab59d743a2a6da1a3b67d84642c7dd3d04e2fdb9ae2d992968ba52aa1aee41
+AUX ffmpeg-6.0.1-libjxl-0.9.patch 5209 BLAKE2B 52c393c8e9b15382dbaf06f0c4651927f9dd87ac5437eb333f84689fafea841aeccf6ce9a43a522e2d4a1ec7e56074b8ee394f8c4b12c521cd48f293d36530f1 SHA512 bd114c62a4692fce9d625acb519900bee48fb604b0b7d7a2dba0a8f6648511be2019612ea8bafde95fa3b115bc9b527ab3267477327ce6e41d34b816f24a2654
AUX ffmpeg-6.1-gcc-14.patch 523 BLAKE2B b82fc06a7eee0c7ab68ef78f3ac205f45a68a7799dc241f0a574afa48e4dbd477c0d67f7c5a7ff46971adc821ef1507f4957156200167a2c59f8c7f7867ac048 SHA512 092cd9bad652ab82c3b160a37c0c92b561577d56b33776e30b79b7abf487fffeb1ef1273b950c4d4eff62d3cd7fec2a6dc2c294285b0b32eda364e47834a4ff9
AUX ffmpeg-6.1-opencl-parallel-gmake-fix.patch 519 BLAKE2B 837eb5bd4041edbe221a22b9104843fc3090db4fdc409ae23302376f981d4125d5437dd6f7062898f678214fb7b3d1f0ab3aa1905bbb1169231891aab7ce2461 SHA512 788da4be706d07578329ef4e12e49c32bc6aa938a0b9327c60dfe49d7c399ce1657fd343a15c4f44b20dcd3fb62a8918643120941655311cd9d473321fd06812
AUX ffmpeg-6.1-wint-conversion.patch 3514 BLAKE2B fcb65b882af964a8f45f71ea3f885fc016e3f89c3d6f0bd6d661d489715c0f746e763a86c6ade1515e212b01559d90ea9c2a97c965e0c0f9087b8396cdd58414 SHA512 7e09fc1a811a21aee9eef0370e57a37817652229a6b0e58cd2e8723e8336124396fe40f6a7c6c5f860046410596027d27d900371ff86609b86ef94dd0633977f
@@ -35,7 +36,7 @@ DIST ffmpeg-rpi-6.1-r3.patch.asc 833 BLAKE2B 31fd5823c06d5884f7b0980de9072c35bbf
EBUILD ffmpeg-4.4.4-r8.ebuild 20310 BLAKE2B be7e7b32d8dfcff4f5284de55d32a3b62db19ab8659088aa9a32ba622de979471d068b38e1f4bae929ff58edb85f9f8c8733909cf4c8f34d65e17d4c1d3d5426 SHA512 b3c89eaa9d558ae23e15f35f499fd33d099a623ccd741763e231a3ece2eef1bbb0184c58a66c77ce3d6253d57f00262fc6206a4264af1045676ecd6a76a5c4db
EBUILD ffmpeg-6.0-r11.ebuild 20020 BLAKE2B 18db116982c97ec2fe3df67f92910ff3b8b6eedbb28dc8163d887138ad02e0527b93b6fd63d606cef6c6d24b09004a2f8df415cdc405dad754e6258b3216eb94 SHA512 5dae2a52047347d43d53283c52a220d1d5dab4a6c1fbee384a1a99aeb2f48b48710a40c341e64719611d08eb7350944641bbf4101dbd9fe73b1a9aa4aac7a5d1
EBUILD ffmpeg-6.0.1-r2.ebuild 19931 BLAKE2B a8529c94233d66e59ff909d46067d3ff8f49f178d4afe4c8852d78df7ed86fb761832fd034f4e85cdf67ca45bb99321c045aef70ac38e028187c841b277b6c59 SHA512 e61c48f3cb4b88322de648a36a72a663d630ad0d535903429220d7c9d63b9324e412ced37124ecec17825ee63033ca025115a86575148c9ac8958e5a59cfcfc2
-EBUILD ffmpeg-6.0.1-r3.ebuild 19978 BLAKE2B 4fa3dcf0e437524ebd81518d67ee65d799bc7075fcbbdf9b813fb195a5e3013374a56f78738649d374286b9e3c51f74efbd2be4f1365eb92b954ffe6e4f8736a SHA512 3944e17e8abe62473400b37abe15c3110938a664c802792234973dcc209acab94befdb99b2f6b9ca2435a5f7c34286f6fd7d9b1e9d5061853bb07200b141dc4a
+EBUILD ffmpeg-6.0.1-r3.ebuild 20018 BLAKE2B 7682b4abd4ffac816295fa3f89d775ca266cc15f5aa779e969224f8ac5f2b8c55758c08cd03312d6bc74b4286a7e8b5ee56f045a84a3806521c0e91e1c34cfe4 SHA512 67492450bd9f6313eb89c8cf3a1a8271638752257270d9cbc839a1ff8184229092a70e73415e83fba8987cbba9165daa1c0469c0e2e280586013911487c97207
EBUILD ffmpeg-6.1.1-r4.ebuild 20265 BLAKE2B 2d6ff2a8a60e62996a400259b8e507d148160afa5746649fbcdc3c5fc0b7a022d9f1595610bb303aa8bf435b2270b64104c9edfd8054dc4604af74b104748959 SHA512 560c898c857f2084a6650f28584fdd4765204a3fdfc14d4111a36220efaf54f6f194d459eaeb1436cda909cc3736469e9dfd1ac7efadd6b4d7b0b9f1e4b5160e
EBUILD ffmpeg-9999.ebuild 20036 BLAKE2B 5794639e39662adcea6b3e9a3868b00f13dcbfc9fda7272dea7f07894bcb958fe63ceeb7e619a182c89bdd8dfaa53a1f4bf06263103536c1ac4fbd842b38e783 SHA512 56e55185de169f74613855e2d22f9b93c99a54ac53781ff4118e623dace3f0b1fbec34cde97181ea409fd91f63822f8dbcc0b67a9823ad0bf350a2883a2d3d73
MISC metadata.xml 7897 BLAKE2B 3ca144eac26a80cd6bd85c51c72e65a879e50ef810bcfc926dabacbcf1e1b217973934488c75f32b9e2a872f3a9f2a1c5e075d01fe048d1076997792fab383a9 SHA512 aa06791277e42ada2f1c3af3f360939f289012f7a1283471b4490c584f88f3f82eb6552218c4bead5d3c85b4514536dd63860fff57f635b189bc78d22a84c43a
diff --git a/media-video/ffmpeg/ffmpeg-6.0.1-r3.ebuild b/media-video/ffmpeg/ffmpeg-6.0.1-r3.ebuild
index 8cf74299df2e..76ce44470f7a 100644
--- a/media-video/ffmpeg/ffmpeg-6.0.1-r3.ebuild
+++ b/media-video/ffmpeg/ffmpeg-6.0.1-r3.ebuild
@@ -64,7 +64,7 @@ LICENSE="
samba? ( GPL-3 )
"
if [ "${PV#9999}" = "${PV}" ] ; then
- KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos"
fi
# Options to use as use_enable in the foo[:bar] form.
@@ -348,6 +348,7 @@ PATCHES=(
"${FILESDIR}"/${PN}-6.0-fix-lto-type-mismatch.patch
"${FILESDIR}"/${PN}-4.4.4-opencl-parallel-gmake-fix.patch
"${FILESDIR}"/${PN}-6.0.1-alignment.patch
+ "${FILESDIR}"/${PN}-6.0.1-libjxl-0.9.patch
)
MULTILIB_WRAPPED_HEADERS=(
diff --git a/media-video/ffmpeg/files/ffmpeg-6.0.1-libjxl-0.9.patch b/media-video/ffmpeg/files/ffmpeg-6.0.1-libjxl-0.9.patch
new file mode 100644
index 000000000000..10c216ec4c88
--- /dev/null
+++ b/media-video/ffmpeg/files/ffmpeg-6.0.1-libjxl-0.9.patch
@@ -0,0 +1,112 @@
+https://bugs.gentoo.org/924431
+https://git.videolan.org/?p=ffmpeg.git;a=commit;h=75b1a555a70c178a9166629e43ec2f6250219eb2
+https://git.videolan.org/?p=ffmpeg.git;a=commit;h=ac06190a5a11f2b170e7719d769d7c0d65bff3e0
+
+From 75b1a555a70c178a9166629e43ec2f6250219eb2 Mon Sep 17 00:00:00 2001
+From: Leo Izen <leo.izen@gmail.com>
+Date: Sat, 8 Jul 2023 14:43:31 -0400
+Subject: [PATCH] avcodec/libjxldec: build against libjxl 0.9
+
+Git master libjxl changed several function signatures, so this commit
+adds some #ifdefs to handle the new signatures without breaking old
+releases. Do note that old git master development versions of libjxl
+will be broken, but no releases will be.
+
+Signed-off-by: Leo Izen <leo.izen@gmail.com>
+--- a/libavcodec/libjxldec.c
++++ b/libavcodec/libjxldec.c
+@@ -210,14 +210,22 @@ static int libjxl_get_icc(AVCodecContext *avctx)
+ JxlDecoderStatus jret;
+ /* an ICC profile is present, and we can meaningfully get it,
+ * because the pixel data is not XYB-encoded */
++#if JPEGXL_NUMERIC_VERSION < JPEGXL_COMPUTE_NUMERIC_VERSION(0, 9, 0)
+ jret = JxlDecoderGetICCProfileSize(ctx->decoder, &ctx->jxl_pixfmt, JXL_COLOR_PROFILE_TARGET_DATA, &icc_len);
++#else
++ jret = JxlDecoderGetICCProfileSize(ctx->decoder, JXL_COLOR_PROFILE_TARGET_DATA, &icc_len);
++#endif
+ if (jret == JXL_DEC_SUCCESS && icc_len > 0) {
+ av_buffer_unref(&ctx->iccp);
+ ctx->iccp = av_buffer_alloc(icc_len);
+ if (!ctx->iccp)
+ return AVERROR(ENOMEM);
++#if JPEGXL_NUMERIC_VERSION < JPEGXL_COMPUTE_NUMERIC_VERSION(0, 9, 0)
+ jret = JxlDecoderGetColorAsICCProfile(ctx->decoder, &ctx->jxl_pixfmt, JXL_COLOR_PROFILE_TARGET_DATA,
+- ctx->iccp->data, icc_len);
++ ctx->iccp->data, icc_len);
++#else
++ jret = JxlDecoderGetColorAsICCProfile(ctx->decoder, JXL_COLOR_PROFILE_TARGET_DATA, ctx->iccp->data, icc_len);
++#endif
+ if (jret != JXL_DEC_SUCCESS) {
+ av_log(avctx, AV_LOG_WARNING, "Unable to obtain ICC Profile\n");
+ av_buffer_unref(&ctx->iccp);
+@@ -253,12 +261,21 @@ static int libjxl_color_encoding_event(AVCodecContext *avctx, AVFrame *frame)
+ /* set this flag if we need to fall back on wide gamut */
+ int fallback = 0;
+
++#if JPEGXL_NUMERIC_VERSION < JPEGXL_COMPUTE_NUMERIC_VERSION(0, 9, 0)
+ jret = JxlDecoderGetColorAsEncodedProfile(ctx->decoder, NULL, JXL_COLOR_PROFILE_TARGET_ORIGINAL, &jxl_color);
++#else
++ jret = JxlDecoderGetColorAsEncodedProfile(ctx->decoder, JXL_COLOR_PROFILE_TARGET_ORIGINAL, &jxl_color);
++#endif
+ if (jret == JXL_DEC_SUCCESS) {
+ /* enum values describe the colors of this image */
+ jret = JxlDecoderSetPreferredColorProfile(ctx->decoder, &jxl_color);
+ if (jret == JXL_DEC_SUCCESS)
+- jret = JxlDecoderGetColorAsEncodedProfile(ctx->decoder, &ctx->jxl_pixfmt, JXL_COLOR_PROFILE_TARGET_DATA, &jxl_color);
++#if JPEGXL_NUMERIC_VERSION < JPEGXL_COMPUTE_NUMERIC_VERSION(0, 9, 0)
++ jret = JxlDecoderGetColorAsEncodedProfile(ctx->decoder, &ctx->jxl_pixfmt,
++ JXL_COLOR_PROFILE_TARGET_DATA, &jxl_color);
++#else
++ jret = JxlDecoderGetColorAsEncodedProfile(ctx->decoder, JXL_COLOR_PROFILE_TARGET_DATA, &jxl_color);
++#endif
+ /* if we couldn't successfully request the pixel data space, we fall back on wide gamut */
+ /* this code path is very unlikely to happen in practice */
+ if (jret != JXL_DEC_SUCCESS)
+--
+2.30.2
+
+From ac06190a5a11f2b170e7719d769d7c0d65bff3e0 Mon Sep 17 00:00:00 2001
+From: Leo Izen <leo.izen@gmail.com>
+Date: Tue, 23 Jan 2024 17:29:14 -0500
+Subject: [PATCH] avcodec/libjxl.h: include version.h
+
+This file has been exported since our minimum required version (0.7.0),
+but it wasn't documented. Instead it was transitively included by
+<jxl/decode.h> (but not jxl/encode.h), which ffmpeg relied on.
+
+libjxl broke its API in libjxl/libjxl@66b959239355aef5255 by removing
+the transitive include of version.h, and they do not plan on adding
+it back. Instead they are choosing to leave the API backwards-
+incompatible with downstream callers written for some fairly recent
+versions of their API.
+
+As a result, we include <jxl/version.h> to continue to build against
+more recent versions of libjxl. The version macros removed are also
+present in that file, so we no longer need to redefine them.
+
+Signed-off-by: Leo Izen <leo.izen@gmail.com>
+--- a/libavcodec/libjxl.h
++++ b/libavcodec/libjxl.h
+@@ -27,19 +27,8 @@
+ #ifndef AVCODEC_LIBJXL_H
+ #define AVCODEC_LIBJXL_H
+
+-#include <jxl/decode.h>
+ #include <jxl/memory_manager.h>
+-
+-/*
+- * libjxl version 0.7.0 and earlier doesn't contain these macros at all
+- * so to detect version 0.7.0 versus 0.8.0 we need to define them ourselves
+- */
+-#ifndef JPEGXL_COMPUTE_NUMERIC_VERSION
+- #define JPEGXL_COMPUTE_NUMERIC_VERSION(major,minor,patch) ((major<<24) | (minor<<16) | (patch<<8) | 0)
+-#endif
+-#ifndef JPEGXL_NUMERIC_VERSION
+- #define JPEGXL_NUMERIC_VERSION JPEGXL_COMPUTE_NUMERIC_VERSION(0, 7, 0)
+-#endif
++#include <jxl/version.h>
+
+ /**
+ * Transform threadcount in ffmpeg to one used by libjxl.
+--
+2.30.2