From 8f2545886ce3be8f1b1229bddcfa5af3216110d3 Mon Sep 17 00:00:00 2001 From: Franz Brausse 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 #include +/* 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 From a2dd56d3200aeafdecbc40c58eeef3d43a5fadcc Mon Sep 17 00:00:00 2001 From: Franz Brausse Date: Sun, 6 May 2018 13:40:30 +0200 Subject: operations/external/ff-save: ffmpeg-2.3-2.7 compat; minimum lav{f,c} versions configure.ac mandates --- operations/external/ff-save.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/operations/external/ff-save.c b/operations/external/ff-save.c index e7edd3e..1edac31 100644 --- a/operations/external/ff-save.c +++ b/operations/external/ff-save.c @@ -91,6 +91,8 @@ property_int (me_subpel_quality, _("me-subpel-quality"), 0) /* 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 +# define AV_CODEC_CAP_VARIABLE_FRAME_SIZE CODEC_CAP_VARIABLE_FRAME_SIZE +# define AV_CODEC_CAP_INTRA_ONLY CODEC_CAP_INTRA_ONLY #endif typedef struct -- cgit v0.12 From 2896800b5e7d0c656710c70fdea57098032f3ccc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=98yvind=20Kol=C3=A5s?= 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