summaryrefslogtreecommitdiff
path: root/media-video/ffmpeg
diff options
context:
space:
mode:
Diffstat (limited to 'media-video/ffmpeg')
-rw-r--r--media-video/ffmpeg/Manifest8
-rw-r--r--media-video/ffmpeg/ffmpeg-4.4.3.ebuild3
-rw-r--r--media-video/ffmpeg/ffmpeg-5.1.2-r1.ebuild3
-rw-r--r--media-video/ffmpeg/ffmpeg-6.0.ebuild3
-rw-r--r--media-video/ffmpeg/files/ffmpeg-4.4.3-get_cabac_inline_x86-32-bit.patch24
-rw-r--r--media-video/ffmpeg/files/ffmpeg-5.1.2-get_cabac_inline_x86-32-bit.patch25
6 files changed, 60 insertions, 6 deletions
diff --git a/media-video/ffmpeg/Manifest b/media-video/ffmpeg/Manifest
index 867eeca67f3c..e344ac0ec638 100644
--- a/media-video/ffmpeg/Manifest
+++ b/media-video/ffmpeg/Manifest
@@ -2,7 +2,9 @@ AUX amf-env-vulkan-override 60 BLAKE2B 409985e6b5ef0e148076c16d8132db2b79ea53e0a
AUX chromium-r1.patch 1582 BLAKE2B 48547a7d53fd1f0f44b682c7e2306e79f007f8e96b36253f76775c4a3ced54ffaaf403dfaae94e81aa26c60887677b2dabdd2c5cef9fc4553e203f8259453910 SHA512 808daad5afed13a6d3926c9f9ab5cb58f80e16969533022c7ee959147908bb2c12d066d2125a6b6975ef9304d9b8d49c39aeb0a047009adabb4529e3cf54498f
AUX ffmpeg-4.2.7-libsdl2-new-version-scheme.patch 1132 BLAKE2B 59d40a3edcb19909a34000fc5e5fe2cb0565031fcb653d4ba3099b310e66ab1f3cf6ce11906d61657e472025bb9135342c7207b7c0536f850156e78e6a0e9cb7 SHA512 bc46370ffb830b32bc5c92ce31b2a2d51f2db1cb8a53bf6f03cc73f184a70448a0e744b5eb3d19990b58bb018e52d16a419ca030f42be4175c577a1d0ddf9f5e
AUX ffmpeg-4.4.3-clang-14-ff_seek_frame_binary-crash.patch 1813 BLAKE2B 3fdb56fade5c723fcf387dfe5e31aefbd88e8256fb2ae24a3a90b91902ff18f9ffa9b1e464c0b0b40fad04c7230be7bec78f043b7ce52d70ee94f2a2313dc2b2 SHA512 fb11cb1047d8f44ab9f9f66e52af136b7fea27589929e45afb770e53837954fb03854ea9d839ecee80d3c3d5a493f32bbdbc74e8efc9600d5b53a7d91136abca
+AUX ffmpeg-4.4.3-get_cabac_inline_x86-32-bit.patch 1068 BLAKE2B b547cd925bfd506e08d44395c67916fe20b30f397a36adf53fcf277660c45aef9d3d8c014b2bbfcf038539618affb9dd8ff5d93f2fe622e4282c61c4d1b26861 SHA512 779e921e783b800e6bf9bc95af73d44a170287676d17bc22f2b7cd91e393f410ec3f6c7bfa173497443a65496047f39f37cac1d56507271411893c5bdcb37d8b
AUX ffmpeg-5.0-backport-ranlib-build-fix.patch 2224 BLAKE2B 1af6c5eee3f2c69c0630a73ec3885b9302cb045a03623ff138939348d6ba7e7deef1bb07c33c5bef5834040c4f6abcd7d22af8b0b849b28efde3d5753b776108 SHA512 e82cd400488ba86e5d039f088e3798b5a66245a8753d275d608284081f4b260fb7a4d8d1310f43acdf81258cc507943c8f07e431c497411744a62ba98c88c5bb
+AUX ffmpeg-5.1.2-get_cabac_inline_x86-32-bit.patch 999 BLAKE2B 736a85e60d3ee9b48346e1d7795bd8e075e8bcc2556695ec9db0a48a8d7356d20795ed31e1d6dcda7615e5ad3ff9faf7edf7563ba6e1f822a99d3cd442bd8a72 SHA512 f16c7185a3265710b6638e35322895590b58dffaffcb8fb436b08f945e19c44a1b66a17902b73e89fd53cf5e4cd9e7f2256bef4df4c82be16a807eb6bf663f5a
AUX ffmpeg-5.1.2-vulkan.patch 1725 BLAKE2B e8be249e7aa6f87eb1653dc6aec19e32e98efde6903cff6d1a32736dc343d7c12da249490853214c87cb95019d677e214dd0a065cf0dc9bbd44f2754c8d9cded SHA512 9fec574848c9ac90f51f6bca18120f40a22f6f737677a57d21bd07867f9e6619c146d8aa1cdac8d11ec53de87e7119316369874d3492b256f295b98b1b5df762
AUX ffmpeg-6.0-DECLARE_ALIGNED.patch 1006 BLAKE2B 10bf1b3f618e0fad2dfb33b42fcec611329181d5481f79c42cbfda7054e2ce5f53e5b2ce439965a1beadc346492ac06c6a91a56d979a73bd72ce8952a15b2dd8 SHA512 e2d3e915a6d9ebae11e000b908bd5346de0d7731407dc783088a6d10a8e36de045a90225d16a01366ed1ad3af16fdb3b87803c03833883e7f31b93e7cdea44f7
AUX vmaf-models-default-path.patch 1126 BLAKE2B 71f83765dc89b85e929af393f9d1415d119e71a91aaf45e8a32fd4fff270a129ca797c3b383a6074bea32fb582816660022a59d33bb6f557514df038baaf0271 SHA512 4d21f4b1622d8e47d2821ecac6b893847ada74d75db7d8aaac70efc7e6e7a6607c011b6fb2d015cb0c5e05f6a56e4feed43eca7d35b0f686a68261e6d9981b6a
@@ -18,8 +20,8 @@ DIST ffmpeg-6.0.tar.xz 10234012 BLAKE2B c70884911f3a3e40fe87473f241a2a56b303f5ab
DIST ffmpeg-6.0.tar.xz.asc 520 BLAKE2B be294d375108b57bca3c687620ce2517c54c99012d82dc7aa1a83d5fe6d5453bd3c8620fdfb743df780cf588983a06a66a458c4e3e454dbe535cbba9da30c48c SHA512 a64cd0f8578fcea4537f5a38634c930d66c8ba4abd3e8e9dcffaeb95c3ad2e754d7bc4fbb5272409d4d32abf8180ef83f7204c6a570b52a37e635efd96cb94ed
EBUILD ffmpeg-4.2.7.ebuild 17929 BLAKE2B 94d2d6a0c1bcda9ac5831893b5844eb62ac1fa7c9518c654aec5acee4b011f157741ebf30125f8550964a86639d9ad3433df15137e5a55196c9167adbf448d4e SHA512 adcc1802e3ac4296cbeee519d331231324d344a28c8d6fdafb4c91fad9f98966c4e6aa8b81e91351d226b8220360b491783eaa3fe452bffce45f5a9c03844390
EBUILD ffmpeg-4.2.8.ebuild 17868 BLAKE2B 418696fff928b6be97556cd837a6673dc784cfe6834589b1ce1723dc5b229d580c05d7beca8541c43a226edd3b789f2db29e4fbc6237b2e11a7418c090d067e2 SHA512 d74c657af270235ce4024a7acd26a0aa168cf2752f9ffcbeca4aa34267111dfa06be277a0c8950ca32afdcebf50a195f9b572eb59fa9aa2b8cf30c0e6af06e1e
-EBUILD ffmpeg-4.4.3.ebuild 19515 BLAKE2B 2567cccbd3ac9fdaedcc119eee1d57bb9562d7c495aaf2bab3cd812bd7c6347d66e429d4de4a36cb6acea7c4e51d5f553e1a73a930da93ca72a2e3173cf90158 SHA512 3b878304d9e3e0dea02c21dd36701a8816289aa11918fcb5fc1d6ee2ab45d81fa941b2f31cc007d5341a0ee95be5d1bf8c536bfa9f72d9989ccbb96330589c99
-EBUILD ffmpeg-5.1.2-r1.ebuild 19680 BLAKE2B 6400f3855f85cf4c65fbeac597e5d4da0054ea73d340809f254bb975f594216d21a40e517cb5d72a58c9d6fa6b81ae7f86b70f28ade439fc517c993c80055cb9 SHA512 c9de2ea5d25b66e9a0d196c1700119b07b9f47ab788c346e514c9f3562fe696b993a13fbfe9e81280f83c57fe4691513c5ac56bd2d4f733dc32a5ad8c7608efe
-EBUILD ffmpeg-6.0.ebuild 19688 BLAKE2B b859796ac6c6a867a13c21b4d3cd417315ee48d284b796cf3e62c3a55a8ac5c8f27c064be6856018dfe24cdaed9fd645bc35081901e2ec59f707d93fa541221d SHA512 0d5cbaf99ec0880078f15f0bb76ba79704c6df25ed99a910bc44eca0fb2f15a0a44fa09090bd506244ef083a98ef6e7b3be2db600218a89eecdc40d1960b3564
+EBUILD ffmpeg-4.4.3.ebuild 19576 BLAKE2B 178e86e08063a361b69dde9ce36dc9fa65171983f41916476eff6feef56c895dcab63f64d5dbd145e7fca3322da52e868012eec791d91fdf75355e25b01e83ba SHA512 bec07436f4659d34d6e2a1776d4b8b371381ff1c5dd269b933cc3374f6abec642d33d3dead6632ca5d840f7a8c4dad2c0cb2d3458329a5471a1ea89d392df5fa
+EBUILD ffmpeg-5.1.2-r1.ebuild 19741 BLAKE2B fb632d0feca945e58a63b29e25a4b44215a94101a1e4c310b4d58099d911c984faa59a1e3ce4a67441ac7e98214d487673c350a7cad72c10ad74b3bf32f09b77 SHA512 8e021b6e4fdd45d5a415f819ec23d8b0b586ba5109a740fd67d52ecddca0c42bf4856f09bc98730728e97d8d568e5ba76d10d16eb467ec141e085d3f401c303d
+EBUILD ffmpeg-6.0.ebuild 19749 BLAKE2B 15d7a1ddba78f6e6e4d9063c239ccbb0b39dbdd96073c90dc40871faaf8e9d119b3c71cf6c9b34c35298d43952a8ee55e85d2180dd1c444ee1ec065cca76c88c SHA512 99216ef59fae9f11b1afc2b0d8ead5c88cc11c12b981b0687e2e27b4015aefa9c24abbe15693fa454ac3a2f2af3b2a94a484905a491d85ce47b9405cef54b26d
EBUILD ffmpeg-9999.ebuild 19646 BLAKE2B 71c6dccd80cb0c0035558806c74b551b308a2904f1eabc378394ae2862af615c7394243c66aae3d81fd428370ad033d83d2647ecc491d9d22e94a36ba79c4d82 SHA512 6bc8d2f2afa185ee0a5528812f4a2e1b3b049f15740e23eb8725f98f44d32b7827a23d958dbc895cf882d09377e6940e6220487d9d650911deb2a451cc580499
MISC metadata.xml 7507 BLAKE2B fa8502460736edd98bbbb51648a7771e10669795b7db5f388da6fc97ac035932844178822765071b5e67a5502a9ccd287c45e407af150a00af7cd5a4b1247a71 SHA512 e3b4764379b9da922dc98c5adcb2905fb997fa3f618c659d7de6d113921e29968257a7f281e9ba2e1c5c683ef5b43dd6d867a3de1c6d6f54c1c354b858ac8289
diff --git a/media-video/ffmpeg/ffmpeg-4.4.3.ebuild b/media-video/ffmpeg/ffmpeg-4.4.3.ebuild
index 3a700cb2f82f..1eaa8af96b91 100644
--- a/media-video/ffmpeg/ffmpeg-4.4.3.ebuild
+++ b/media-video/ffmpeg/ffmpeg-4.4.3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -333,6 +333,7 @@ PATCHES=(
"${FILESDIR}"/chromium-r1.patch
"${FILESDIR}"/${PN}-5.0-backport-ranlib-build-fix.patch
"${FILESDIR}"/${P}-clang-14-ff_seek_frame_binary-crash.patch
+ "${FILESDIR}"/${PN}-4.4.3-get_cabac_inline_x86-32-bit.patch
)
MULTILIB_WRAPPED_HEADERS=(
diff --git a/media-video/ffmpeg/ffmpeg-5.1.2-r1.ebuild b/media-video/ffmpeg/ffmpeg-5.1.2-r1.ebuild
index ebfee785a3f4..3d21b79ce2d7 100644
--- a/media-video/ffmpeg/ffmpeg-5.1.2-r1.ebuild
+++ b/media-video/ffmpeg/ffmpeg-5.1.2-r1.ebuild
@@ -336,7 +336,8 @@ S=${WORKDIR}/${P/_/-}
PATCHES=(
"${FILESDIR}"/chromium-r1.patch
- "${FILESDIR}/${P}-vulkan.patch"
+ "${FILESDIR}"/${P}-vulkan.patch
+ "${FILESDIR}"/${PN}-5.1.2-get_cabac_inline_x86-32-bit.patch
)
MULTILIB_WRAPPED_HEADERS=(
diff --git a/media-video/ffmpeg/ffmpeg-6.0.ebuild b/media-video/ffmpeg/ffmpeg-6.0.ebuild
index 5cc3230259b2..eee97981c06f 100644
--- a/media-video/ffmpeg/ffmpeg-6.0.ebuild
+++ b/media-video/ffmpeg/ffmpeg-6.0.ebuild
@@ -336,7 +336,8 @@ S=${WORKDIR}/${P/_/-}
PATCHES=(
"${FILESDIR}"/chromium-r1.patch
- "${FILESDIR}/${P}-DECLARE_ALIGNED.patch"
+ "${FILESDIR}"/${P}-DECLARE_ALIGNED.patch
+ "${FILESDIR}"/${PN}-5.1.2-get_cabac_inline_x86-32-bit.patch
)
MULTILIB_WRAPPED_HEADERS=(
diff --git a/media-video/ffmpeg/files/ffmpeg-4.4.3-get_cabac_inline_x86-32-bit.patch b/media-video/ffmpeg/files/ffmpeg-4.4.3-get_cabac_inline_x86-32-bit.patch
new file mode 100644
index 000000000000..ed273975452d
--- /dev/null
+++ b/media-video/ffmpeg/files/ffmpeg-4.4.3-get_cabac_inline_x86-32-bit.patch
@@ -0,0 +1,24 @@
+https://bugs.gentoo.org/901099 and partly https://bugs.gentoo.org/900937.
+
+Newer compilers may optimise such that < 7 registers are free on 32-bit x86
+and then we get an "invalid asm" error. This is https://bugs.gentoo.org/901099
+and https://trac.ffmpeg.org/ticket/8903.
+
+Making matters worse, GCC sometimes hangs on invalid asm, so this also
+mitigates a hang with e.g. -O3 -march=znver1. See https://bugs.gentoo.org/900937
+and https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109137.
+
+In future, we may want to adjust the definition of HAVE_7REGS to just exclude
+32-bit x86, but that's a big sledgehammer, so let's avoid it for now until we have
+a reply on the upstream ffmpeg bug.
+--- a/libavcodec/x86/cabac.h
++++ b/libavcodec/x86/cabac.h
+@@ -175,7 +175,7 @@
+
+ #endif /* BROKEN_RELOCATIONS */
+
+-#if HAVE_7REGS && !BROKEN_COMPILER
++#if HAVE_7REGS && !BROKEN_COMPILER && !ARCH_X86_32
+ #define get_cabac_inline get_cabac_inline_x86
+ static av_always_inline int get_cabac_inline_x86(CABACContext *c,
+ uint8_t *const state)
diff --git a/media-video/ffmpeg/files/ffmpeg-5.1.2-get_cabac_inline_x86-32-bit.patch b/media-video/ffmpeg/files/ffmpeg-5.1.2-get_cabac_inline_x86-32-bit.patch
new file mode 100644
index 000000000000..40db3304b564
--- /dev/null
+++ b/media-video/ffmpeg/files/ffmpeg-5.1.2-get_cabac_inline_x86-32-bit.patch
@@ -0,0 +1,25 @@
+https://bugs.gentoo.org/901099 and partly https://bugs.gentoo.org/900937.
+
+Newer compilers may optimise such that < 7 registers are free on 32-bit x86
+and then we get an "invalid asm" error. This is https://bugs.gentoo.org/901099
+and https://trac.ffmpeg.org/ticket/8903.
+
+Making matters worse, GCC sometimes hangs on invalid asm, so this also
+mitigates a hang with e.g. -O3 -march=znver1. See https://bugs.gentoo.org/900937
+and https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109137.
+
+In future, we may want to adjust the definition of HAVE_7REGS to just exclude
+32-bit x86, but that's a big sledgehammer, so let's avoid it for now until we have
+a reply on the upstream ffmpeg bug.
+--- a/libavcodec/x86/cabac.h
++++ b/libavcodec/x86/cabac.h
+@@ -175,7 +175,7 @@
+
+ #endif /* BROKEN_RELOCATIONS */
+
+-#if HAVE_7REGS && !BROKEN_COMPILER
++#if HAVE_7REGS && !BROKEN_COMPILER && !ARCH_X86_32
+ #define get_cabac_inline get_cabac_inline_x86
+ static
+ #if defined(_WIN32) && !defined(_WIN64) && defined(__clang__)
+