summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Pipping <sping@gentoo.org>2018-05-13 19:28:19 +0200
committerSebastian Pipping <sping@gentoo.org>2018-05-13 19:30:24 +0200
commit2ce460484a2841634b71f5df4335ba3eca4f709a (patch)
treeefca7428383b05c921ad6fd7f7c996ebe38ed105
parentsys-apps/restorecond: bump to 2.8_rc3 (diff)
downloadgentoo-2ce46048.tar.gz
gentoo-2ce46048.tar.bz2
gentoo-2ce46048.zip
media-libs/gegl: Support ffmpeg 4.0
Closes: https://bugs.gentoo.org/654172 Package-Manager: Portage-2.3.36, Repoman-2.3.9
-rw-r--r--media-libs/gegl/files/gegl-0.4.0-ffmpeg-4-0-compat-1.patch63
-rw-r--r--media-libs/gegl/files/gegl-0.4.0-ffmpeg-4-0-compat-2.patch25
-rw-r--r--media-libs/gegl/gegl-0.3.34.ebuild2
-rw-r--r--media-libs/gegl/gegl-0.4.0-r1.ebuild2
4 files changed, 92 insertions, 0 deletions
diff --git a/media-libs/gegl/files/gegl-0.4.0-ffmpeg-4-0-compat-1.patch b/media-libs/gegl/files/gegl-0.4.0-ffmpeg-4-0-compat-1.patch
new file mode 100644
index 000000000000..fc8027f08ae4
--- /dev/null
+++ b/media-libs/gegl/files/gegl-0.4.0-ffmpeg-4-0-compat-1.patch
@@ -0,0 +1,63 @@
+From 8f2545886ce3be8f1b1229bddcfa5af3216110d3 Mon Sep 17 00:00:00 2001
+From: Franz Brausse <brausse@informatik.uni-trier.de>
+Date: Sun, 6 May 2018 13:38:09 +0200
+Subject: operations/external/ff-save: ffmpeg-4.0 compat; fixes #795625
+
+---
+ operations/external/ff-save.c | 11 ++++++++++-
+ 1 file changed, 10 insertions(+), 1 deletion(-)
+
+diff --git a/operations/external/ff-save.c b/operations/external/ff-save.c
+index 90b6162..e7edd3e 100644
+--- a/operations/external/ff-save.c
++++ b/operations/external/ff-save.c
+@@ -88,6 +88,11 @@ property_int (me_subpel_quality, _("me-subpel-quality"), 0)
+ #include <libavutil/opt.h>
+ #include <libswscale/swscale.h>
+
++/* remove if libavcodec_required_version is changed to > 56.41.100 */
++#if LIBAVCODEC_VERSION_INT <= AV_VERSION_INT(56,41,100)
++# define AV_CODEC_FLAG_GLOBAL_HEADER CODEC_FLAG_GLOBAL_HEADER
++#endif
++
+ typedef struct
+ {
+ gdouble frame;
+@@ -290,7 +295,7 @@ add_audio_stream (GeglProperties *o, AVFormatContext * oc, int codec_id)
+ c->codec_type = AVMEDIA_TYPE_AUDIO;
+
+ if (oc->oformat->flags & AVFMT_GLOBALHEADER)
+- c->flags |= CODEC_FLAG_GLOBAL_HEADER;
++ c->flags |= AV_CODEC_FLAG_GLOBAL_HEADER;
+
+ return st;
+ }
+@@ -699,7 +704,9 @@ open_video (GeglProperties *o, AVFormatContext * oc, AVStream * st)
+ }
+
+ p->video_outbuf = NULL;
++#if (LIBAVFORMAT_VERSION_MAJOR < 58) /* AVFMT_RAWPICTURE got removed from ffmpeg: "not used anymore" */
+ if (!(oc->oformat->flags & AVFMT_RAWPICTURE))
++#endif
+ {
+ /* allocate output buffer, 1 mb / frame, might fail for some codecs on UHD - but works for now */
+ p->video_outbuf_size = 1024 * 1024;
+@@ -803,6 +810,7 @@ write_video_frame (GeglProperties *o,
+ picture_ptr = p->picture;
+ picture_ptr->pts = p->frame_count;
+
++ #if (LIBAVFORMAT_VERSION_MAJOR < 58) /* AVFMT_RAWPICTURE got removed from ffmpeg: "not used anymore" */
+ if (oc->oformat->flags & AVFMT_RAWPICTURE)
+ {
+ /* raw video case. The API will change slightly in the near
+@@ -821,6 +829,7 @@ write_video_frame (GeglProperties *o,
+ ret = av_write_frame (oc, &pkt);
+ }
+ else
++#endif
+ {
+ /* encode the image */
+ AVPacket pkt2;
+--
+cgit v0.12
+
diff --git a/media-libs/gegl/files/gegl-0.4.0-ffmpeg-4-0-compat-2.patch b/media-libs/gegl/files/gegl-0.4.0-ffmpeg-4-0-compat-2.patch
new file mode 100644
index 000000000000..260ff3b2c1a4
--- /dev/null
+++ b/media-libs/gegl/files/gegl-0.4.0-ffmpeg-4-0-compat-2.patch
@@ -0,0 +1,25 @@
+From 2896800b5e7d0c656710c70fdea57098032f3ccc Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?=C3=98yvind=20Kol=C3=A5s?= <pippin@gimp.org>
+Date: Sun, 6 May 2018 15:09:03 +0200
+Subject: ff-save: update another occurance of CODEC_FLAG_GLOBAL_HEADER
+
+---
+ operations/external/ff-save.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/operations/external/ff-save.c b/operations/external/ff-save.c
+index 1edac31..f30bf10 100644
+--- a/operations/external/ff-save.c
++++ b/operations/external/ff-save.c
+@@ -638,7 +638,7 @@ add_video_stream (GeglProperties *o, AVFormatContext * oc, int codec_id)
+ #endif
+
+ if (oc->oformat->flags & AVFMT_GLOBALHEADER)
+- c->flags |= CODEC_FLAG_GLOBAL_HEADER;
++ c->flags |= AV_CODEC_FLAG_GLOBAL_HEADER;
+
+ return st;
+ }
+--
+cgit v0.12
+
diff --git a/media-libs/gegl/gegl-0.3.34.ebuild b/media-libs/gegl/gegl-0.3.34.ebuild
index 075874901a6d..90e2075cd1cd 100644
--- a/media-libs/gegl/gegl-0.3.34.ebuild
+++ b/media-libs/gegl/gegl-0.3.34.ebuild
@@ -77,6 +77,8 @@ pkg_setup() {
PATCHES=(
"${FILESDIR}"/${PN}-0.3.12-failing-tests.patch
+ "${FILESDIR}"/${PN}-0.4.0-ffmpeg-4-0-compat-1.patch # bug 654172
+ "${FILESDIR}"/${PN}-0.4.0-ffmpeg-4-0-compat-2.patch # bug 654172
)
src_prepare() {
diff --git a/media-libs/gegl/gegl-0.4.0-r1.ebuild b/media-libs/gegl/gegl-0.4.0-r1.ebuild
index 79a293b0beb5..36f2afb95aaa 100644
--- a/media-libs/gegl/gegl-0.4.0-r1.ebuild
+++ b/media-libs/gegl/gegl-0.4.0-r1.ebuild
@@ -78,6 +78,8 @@ pkg_setup() {
PATCHES=(
"${FILESDIR}"/${PN}-0.3.12-failing-tests.patch
+ "${FILESDIR}"/${P}-ffmpeg-4-0-compat-1.patch # bug 654172
+ "${FILESDIR}"/${P}-ffmpeg-4-0-compat-2.patch # bug 654172
)
src_prepare() {