svn commit: r428399 - in head/graphics/gegl3: . files
Jan Beich
jbeich at FreeBSD.org
Mon Dec 12 08:24:07 UTC 2016
Author: jbeich
Date: Mon Dec 12 08:24:05 2016
New Revision: 428399
URL: https://svnweb.freebsd.org/changeset/ports/428399
Log:
graphics/gegl3: unbreak FFMPEG=on runtime
$ echo CFLAGS+=-Werror=implicit-function-declaration >>Makefile.local
$ make
[...]
./ff-save.c:700:9: error: implicit declaration of function 'avcodec_encode_video' is invalid in C99
[-Werror,-Wimplicit-function-declaration]
avcodec_encode_video (c,
^
./ff-save.c:700:9: note: did you mean 'avcodec_encode_video2'?
/usr/local/include/libavcodec/avcodec.h:5323:5: note: 'avcodec_encode_video2' declared here
int avcodec_encode_video2(AVCodecContext *avctx, AVPacket *avpkt,
^
PR: 207547
Obtained from: upstream
Approved by: portmgr blanket
Added:
head/graphics/gegl3/files/
head/graphics/gegl3/files/patch-operations_external_ff-save.c (contents, props changed)
Modified:
head/graphics/gegl3/Makefile (contents, props changed)
Modified: head/graphics/gegl3/Makefile
==============================================================================
--- head/graphics/gegl3/Makefile Mon Dec 12 08:08:41 2016 (r428398)
+++ head/graphics/gegl3/Makefile Mon Dec 12 08:24:05 2016 (r428399)
@@ -3,7 +3,7 @@
PORTNAME= gegl
PORTVERSION= 0.3.4
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= graphics
MASTER_SITES= GIMP
PKGNAMESUFFIX= 3
Added: head/graphics/gegl3/files/patch-operations_external_ff-save.c
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/graphics/gegl3/files/patch-operations_external_ff-save.c Mon Dec 12 08:24:05 2016 (r428399)
@@ -0,0 +1,42 @@
+https://git.gnome.org/browse/gegl/commit/?id=e26d6deace35
+
+--- operations/external/ff-save.c.orig 2015-11-23 06:16:26 UTC
++++ operations/external/ff-save.c
+@@ -696,10 +696,33 @@ write_video_frame (GeglProperties *o,
+ else
+ {
+ /* encode the image */
+- out_size =
+- avcodec_encode_video (c,
+- p->video_outbuf,
+- p->video_outbuf_size, picture_ptr);
++ AVPacket pkt2;
++ int got_packet = 0;
++ av_init_packet(&pkt2);
++ pkt2.data = p->video_outbuf;
++ pkt2.size = p->video_outbuf_size;
++
++ out_size = avcodec_encode_video2(c, &pkt2, picture_ptr, &got_packet);
++
++ if (!out_size && got_packet && c->coded_frame)
++ {
++ c->coded_frame->pts = pkt2.pts;
++ c->coded_frame->key_frame = !!(pkt2.flags & AV_PKT_FLAG_KEY);
++ if (c->codec->capabilities & AV_CODEC_CAP_INTRA_ONLY)
++ c->coded_frame->pict_type = AV_PICTURE_TYPE_I;
++ }
++
++ if (pkt2.side_data_elems > 0)
++ {
++ int i;
++ for (i = 0; i < pkt2.side_data_elems; i++)
++ av_free(pkt2.side_data[i].data);
++ av_freep(&pkt2.side_data);
++ pkt2.side_data_elems = 0;
++ }
++
++ if (!out_size)
++ out_size = pkt2.size;
+
+ /* if zero size, it means the image was buffered */
+ if (out_size != 0)
More information about the svn-ports-head
mailing list