gnu: blender: Use newer ffmpeg.
* gnu/packages/graphics.scm (blender)[source]: Add patch for newer ffmpeg compatability. [inputs]: Replace ffmpeg-2.8 with ffmpeg. * gnu/packages/patches/blender-newer-ffmpeg.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it.master
parent
25ca46985c
commit
5deb0c670d
|
@ -603,6 +603,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/beignet-correct-file-names.patch \
|
%D%/packages/patches/beignet-correct-file-names.patch \
|
||||||
%D%/packages/patches/binutils-loongson-workaround.patch \
|
%D%/packages/patches/binutils-loongson-workaround.patch \
|
||||||
%D%/packages/patches/blast+-fix-makefile.patch \
|
%D%/packages/patches/blast+-fix-makefile.patch \
|
||||||
|
%D%/packages/patches/blender-newer-ffmpeg.patch \
|
||||||
%D%/packages/patches/boost-fix-icu-build.patch \
|
%D%/packages/patches/boost-fix-icu-build.patch \
|
||||||
%D%/packages/patches/borg-respect-storage-quota.patch \
|
%D%/packages/patches/borg-respect-storage-quota.patch \
|
||||||
%D%/packages/patches/byobu-writable-status.patch \
|
%D%/packages/patches/byobu-writable-status.patch \
|
||||||
|
|
|
@ -85,7 +85,8 @@
|
||||||
"blender-" version ".tar.gz"))
|
"blender-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1g4kcdqmf67srzhi3hkdnr4z1ph4h9sza1pahz38mrj998q4r52c"))))
|
"1g4kcdqmf67srzhi3hkdnr4z1ph4h9sza1pahz38mrj998q4r52c"))
|
||||||
|
(patches (search-patches "blender-newer-ffmpeg.patch"))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(let ((python-version (version-major+minor (package-version python))))
|
(let ((python-version (version-major+minor (package-version python))))
|
||||||
|
@ -141,7 +142,7 @@
|
||||||
("libjpeg" ,libjpeg)
|
("libjpeg" ,libjpeg)
|
||||||
("libpng" ,libpng)
|
("libpng" ,libpng)
|
||||||
("libtiff" ,libtiff)
|
("libtiff" ,libtiff)
|
||||||
("ffmpeg-2.8" ,ffmpeg-2.8) ;<https://lists.gnu.org/archive/html/guix-devel/2016-04/msg01019.html>
|
("ffmpeg" ,ffmpeg)
|
||||||
("fftw" ,fftw)
|
("fftw" ,fftw)
|
||||||
("jack" ,jack-1)
|
("jack" ,jack-1)
|
||||||
("libsndfile" ,libsndfile)
|
("libsndfile" ,libsndfile)
|
||||||
|
|
|
@ -0,0 +1,80 @@
|
||||||
|
https://sources.debian.org/data/main/b/blender/2.79.b+dfsg0-4/debian/patches/0008-fix_building_with_latest_versions_of_FFmpeg.patch
|
||||||
|
|
||||||
|
From: Bastien Montagne <montagne29@wanadoo.fr>
|
||||||
|
Date: Tue, 8 May 2018 16:00:52 +0200
|
||||||
|
Subject: fix_building_with_latest_versions_of_FFmpeg
|
||||||
|
|
||||||
|
Some years-old deprecated stuff has now been removed.
|
||||||
|
|
||||||
|
Correct solution is probably to use valid defines etc. in own code, but
|
||||||
|
this is more FFMEPG maintainer task (since it also may change how old
|
||||||
|
FFMPEG we do support...).
|
||||||
|
---
|
||||||
|
intern/ffmpeg/ffmpeg_compat.h | 39 ++++++++++++++++++++++++++
|
||||||
|
source/blender/blenkernel/intern/writeffmpeg.c | 3 +-
|
||||||
|
2 files changed, 41 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/intern/ffmpeg/ffmpeg_compat.h b/intern/ffmpeg/ffmpeg_compat.h
|
||||||
|
index 9c06c8a..f7f437c 100644
|
||||||
|
--- a/intern/ffmpeg/ffmpeg_compat.h
|
||||||
|
+++ b/intern/ffmpeg/ffmpeg_compat.h
|
||||||
|
@@ -109,6 +109,45 @@ int av_sample_fmt_is_planar(enum AVSampleFormat sample_fmt)
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
+/* XXX TODO Probably fix to correct modern flags in code? Not sure how old FFMPEG we want to support though,
|
||||||
|
+ * so for now this will do. */
|
||||||
|
+
|
||||||
|
+#ifndef FF_MIN_BUFFER_SIZE
|
||||||
|
+# ifdef AV_INPUT_BUFFER_MIN_SIZE
|
||||||
|
+# define FF_MIN_BUFFER_SIZE AV_INPUT_BUFFER_MIN_SIZE
|
||||||
|
+# endif
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
+#ifndef FF_INPUT_BUFFER_PADDING_SIZE
|
||||||
|
+# ifdef AV_INPUT_BUFFER_PADDING_SIZE
|
||||||
|
+# define FF_INPUT_BUFFER_PADDING_SIZE AV_INPUT_BUFFER_PADDING_SIZE
|
||||||
|
+# endif
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
+#ifndef CODEC_FLAG_GLOBAL_HEADER
|
||||||
|
+# ifdef AV_CODEC_FLAG_GLOBAL_HEADER
|
||||||
|
+# define CODEC_FLAG_GLOBAL_HEADER AV_CODEC_FLAG_GLOBAL_HEADER
|
||||||
|
+# endif
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
+#ifndef CODEC_FLAG_GLOBAL_HEADER
|
||||||
|
+# ifdef AV_CODEC_FLAG_GLOBAL_HEADER
|
||||||
|
+# define CODEC_FLAG_GLOBAL_HEADER AV_CODEC_FLAG_GLOBAL_HEADER
|
||||||
|
+# endif
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
+#ifndef CODEC_FLAG_INTERLACED_DCT
|
||||||
|
+# ifdef AV_CODEC_FLAG_INTERLACED_DCT
|
||||||
|
+# define CODEC_FLAG_INTERLACED_DCT AV_CODEC_FLAG_INTERLACED_DCT
|
||||||
|
+# endif
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
+#ifndef CODEC_FLAG_INTERLACED_ME
|
||||||
|
+# ifdef AV_CODEC_FLAG_INTERLACED_ME
|
||||||
|
+# define CODEC_FLAG_INTERLACED_ME AV_CODEC_FLAG_INTERLACED_ME
|
||||||
|
+# endif
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
/* FFmpeg upstream 1.0 is the first who added AV_ prefix. */
|
||||||
|
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 59, 100)
|
||||||
|
# define AV_CODEC_ID_NONE CODEC_ID_NONE
|
||||||
|
diff --git a/source/blender/blenkernel/intern/writeffmpeg.c b/source/blender/blenkernel/intern/writeffmpeg.c
|
||||||
|
index a19e414..04d508a 100644
|
||||||
|
--- a/source/blender/blenkernel/intern/writeffmpeg.c
|
||||||
|
+++ b/source/blender/blenkernel/intern/writeffmpeg.c
|
||||||
|
@@ -605,7 +605,8 @@ static AVStream *alloc_video_stream(FFMpegContext *context, RenderData *rd, int
|
||||||
|
c->rc_buffer_aggressivity = 1.0;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
- c->me_method = ME_EPZS;
|
||||||
|
+ /* Deprecated and not doing anything since July 2015, deleted in recent ffmpeg */
|
||||||
|
+ //c->me_method = ME_EPZS;
|
||||||
|
|
||||||
|
codec = avcodec_find_encoder(c->codec_id);
|
||||||
|
if (!codec)
|
Reference in New Issue