diff options
author | Josselin Poiret <dev@jpoiret.xyz> | 2024-01-30 10:56:58 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2024-08-31 10:44:51 +0200 |
commit | c033fb81461a6696d6f22a29c5003486ed212e9e (patch) | |
tree | e7ac19e7c57051bc391e573dbb31a8ce83a75aad /gnu/packages | |
parent | 7b10ca6fe2b2bd138d37142b479d0603ab656a38 (diff) | |
download | guix-c033fb81461a6696d6f22a29c5003486ed212e9e.tar guix-c033fb81461a6696d6f22a29c5003486ed212e9e.tar.gz |
gnu: ffmpeg: Fix builds.
* gnu/packages/patches/ffmpeg-remove-compressed_ten_bit_format.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/video.scm (ffmpeg-4): Use it.
(ffmpeg-3.4, ffmpeg-2.8): Use ffmpeg-4-binutils-2.41.patch.
Change-Id: Idaf1d80f33530ba6d8c3c60b284dc08e522ec220
Diffstat (limited to 'gnu/packages')
-rw-r--r-- | gnu/packages/patches/ffmpeg-remove-compressed_ten_bit_format.patch | 43 | ||||
-rw-r--r-- | gnu/packages/video.scm | 12 |
2 files changed, 51 insertions, 4 deletions
diff --git a/gnu/packages/patches/ffmpeg-remove-compressed_ten_bit_format.patch b/gnu/packages/patches/ffmpeg-remove-compressed_ten_bit_format.patch new file mode 100644 index 0000000000..3eac98d1f9 --- /dev/null +++ b/gnu/packages/patches/ffmpeg-remove-compressed_ten_bit_format.patch @@ -0,0 +1,43 @@ +From 031f1561cd286596cdb374da32f8aa816ce3b135 Mon Sep 17 00:00:00 2001 +From: Christopher Degawa <christopher.degawa@intel.com> +Date: Thu, 20 Oct 2022 22:55:27 -0500 +Subject: [PATCH] avcodec/libsvtav1: remove compressed_ten_bit_format and + simplify alloc_buffer + +compressed_ten_bit_format has been deprecated upstream and has no effect +and can be removed. Plus, technically it was never used in the first place +since it would require the app (ffmpeg) to set it and do additional +processing of the input frames. + +Also simplify alloc_buffer by removing calculations relating to the +non-existant processing. + +Signed-off-by: Christopher Degawa <christopher.degawa@intel.com> +--- + libavcodec/libsvtav1.c | 10 +++------- + 1 file changed, 3 insertions(+), 7 deletions(-) + +diff --git a/libavcodec/libsvtav1.c b/libavcodec/libsvtav1.c +index 2f5634cee0241..28da206cf8512 100644 +--- a/libavcodec/libsvtav1.c ++++ b/libavcodec/libsvtav1.c +@@ -124,16 +124,12 @@ static int svt_print_error(void *log_ctx, EbErrorType err, + + static int alloc_buffer(EbSvtAv1EncConfiguration *config, SvtContext *svt_enc) + { +- const int pack_mode_10bit = +- (config->encoder_bit_depth > 8) && (config->compressed_ten_bit_format == 0) ? 1 : 0; +- const size_t luma_size_8bit = +- config->source_width * config->source_height * (1 << pack_mode_10bit); +- const size_t luma_size_10bit = +- (config->encoder_bit_depth > 8 && pack_mode_10bit == 0) ? luma_size_8bit : 0; ++ const size_t luma_size = config->source_width * config->source_height * ++ (config->encoder_bit_depth > 8 ? 2 : 1); + + EbSvtIOFormat *in_data; + +- svt_enc->raw_size = (luma_size_8bit + luma_size_10bit) * 3 / 2; ++ svt_enc->raw_size = luma_size * 3 / 2; + + // allocate buffer for in and out + svt_enc->in_buf = av_mallocz(sizeof(*svt_enc->in_buf)); diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 0100370e30..3da7a29c82 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1895,7 +1895,8 @@ audio/video codec library.") (sha256 (base32 "14xadxm1yaamp216nq09xwasxg5g133v86dbb33mdg5di1zrlhdg")) - (patches (search-patches "ffmpeg-4-binutils-2.41.patch")))) + (patches (search-patches "ffmpeg-remove-compressed_ten_bit_format.patch" + "ffmpeg-4-binutils-2.41.patch")))) (inputs (modify-inputs (package-inputs ffmpeg) (replace "sdl2" sdl2-2.0))) (arguments @@ -1913,7 +1914,8 @@ audio/video codec library.") version ".tar.xz")) (sha256 (base32 - "0np0yalqdrm7rn7iykgfzz3ly4vbgigrajg48c1l6n7qrzqvfszv")))) + "0np0yalqdrm7rn7iykgfzz3ly4vbgigrajg48c1l6n7qrzqvfszv")) + (patches (search-patches "ffmpeg-4-binutils-2.41.patch")))) (arguments (substitute-keyword-arguments (package-arguments ffmpeg-4) ((#:modules modules %default-gnu-modules) @@ -1924,7 +1926,8 @@ audio/video codec library.") '("--enable-libdav1d" "--enable-libaom" "--enable-librav1e" - "--enable-libsrt"))))) + "--enable-libsrt" + "--enable-libsvtav1"))))) (inputs (modify-inputs (package-inputs ffmpeg-4) (delete "dav1d" "libaom" "rav1e" "srt"))))) @@ -1938,7 +1941,8 @@ audio/video codec library.") version ".tar.xz")) (sha256 (base32 - "0c8m4hhv2k5fybha908wzrpnf3wqkq52hayl658jq4bah0igdfqz")))) + "0c8m4hhv2k5fybha908wzrpnf3wqkq52hayl658jq4bah0igdfqz")) + (patches (search-patches "ffmpeg-4-binutils-2.41.patch")))) (arguments `(#:tests? #f ; XXX: Enable them later, if required #:configure-flags |