Date: Fri, 4 Nov 2016 12:06:15 +0000 (UTC) From: Jan Beich <jbeich@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-branches@freebsd.org Subject: svn commit: r425316 - in branches/2016Q4/multimedia/nordlicht: . files Message-ID: <201611041206.uA4C6Fvo014315@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: jbeich Date: Fri Nov 4 12:06:15 2016 New Revision: 425316 URL: https://svnweb.freebsd.org/changeset/ports/425316 Log: MFH: r425315 multimedia/nordlicht: unbreak build with ffmpeg 3.x image.c:28:24: error: use of undeclared identifier 'PIX_FMT_RGB24'; did you mean 'AV_PIX_FMT_RGB24'? i->frame->format = PIX_FMT_RGB24; // best choice? ^~~~~~~~~~~~~ AV_PIX_FMT_RGB24 /usr/local/include/libavutil/pixfmt.h:64:5: note: 'AV_PIX_FMT_RGB24' declared here AV_PIX_FMT_RGB24, ///< packed RGB 8:8:8, 24bpp, RGBRGB... ^ image.c:243:32: error: use of undeclared identifier 'PIX_FMT_RGB24'; did you mean 'AV_PIX_FMT_RGB24'? encoder_context->pix_fmt = PIX_FMT_RGB24; ^~~~~~~~~~~~~ AV_PIX_FMT_RGB24 /usr/local/include/libavutil/pixfmt.h:64:5: note: 'AV_PIX_FMT_RGB24' declared here AV_PIX_FMT_RGB24, ///< packed RGB 8:8:8, 24bpp, RGBRGB... ^ PR: 214196 Submitted by: Tobias Kortkamp <t@tobik.me> (maintainer) Obtained from: upstream Approved by: ports-secteam blanket Added: branches/2016Q4/multimedia/nordlicht/files/patch-image.c - copied unchanged from r425315, head/multimedia/nordlicht/files/patch-image.c branches/2016Q4/multimedia/nordlicht/files/patch-source.c - copied unchanged from r425315, head/multimedia/nordlicht/files/patch-source.c Modified: branches/2016Q4/multimedia/nordlicht/Makefile Directory Properties: branches/2016Q4/ (props changed) Modified: branches/2016Q4/multimedia/nordlicht/Makefile ============================================================================== --- branches/2016Q4/multimedia/nordlicht/Makefile Fri Nov 4 12:03:32 2016 (r425315) +++ branches/2016Q4/multimedia/nordlicht/Makefile Fri Nov 4 12:06:15 2016 (r425316) @@ -4,6 +4,7 @@ PORTNAME= nordlicht PORTVERSION= 0.4.4 DISTVERSIONPREFIX= v +PORTREVISION= 1 CATEGORIES= multimedia MAINTAINER= t@tobik.me Copied: branches/2016Q4/multimedia/nordlicht/files/patch-image.c (from r425315, head/multimedia/nordlicht/files/patch-image.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ branches/2016Q4/multimedia/nordlicht/files/patch-image.c Fri Nov 4 12:06:15 2016 (r425316, copy of r425315, head/multimedia/nordlicht/files/patch-image.c) @@ -0,0 +1,68 @@ +For ffmpeg 3.x compatibility + +https://github.com/nordlicht/nordlicht/commit/5505a1898ab997a23b75553794eff6609447c43b.patch +https://github.com/nordlicht/nordlicht/commit/6e534a0c273756b88eecea7f510b6aa8a62dd789.patch +and https://github.com/nordlicht/nordlicht/pull/63/commits/b8f439c2796d6b1de73511c0610aecb31c942790 + +--- image.c.orig 2016-01-24 19:35:50 UTC ++++ image.c +@@ -5,11 +5,36 @@ + #include <string.h> + #include <libswscale/swscale.h> + ++// Changes for ffmpeg 3.0 ++#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(57,24,0) ++# include <libavutil/imgutils.h> ++# define av_free_packet av_packet_unref ++# define avpicture_get_size(fmt,w,h) av_image_get_buffer_size(fmt,w,h,1) ++#endif ++ ++// PIX_FMT was renamed to AV_PIX_FMT on this version ++#if LIBAVUTIL_VERSION_INT < AV_VERSION_INT(51,74,100) ++# define AVPixelFormat PixelFormat ++# define AV_PIX_FMT_RGB24 PIX_FMT_RGB24 ++# define AV_PIX_FMT_YUVJ420P PIX_FMT_YUVJ420P ++# define AV_PIX_FMT_YUVJ422P PIX_FMT_YUVJ422P ++# define AV_PIX_FMT_YUVJ440P PIX_FMT_YUVJ440P ++# define AV_PIX_FMT_YUVJ444P PIX_FMT_YUVJ444P ++# define AV_PIX_FMT_YUV420P PIX_FMT_YUV420P ++# define AV_PIX_FMT_YUV422P PIX_FMT_YUV422P ++# define AV_PIX_FMT_YUV440P PIX_FMT_YUV440P ++# define AV_PIX_FMT_YUV444P PIX_FMT_YUV444P ++#endif ++ + #if LIBAVUTIL_VERSION_INT < AV_VERSION_INT(52, 8, 0) +-#define av_frame_alloc avcodec_alloc_frame +-#define av_frame_free av_freep ++# define av_frame_alloc avcodec_alloc_frame ++# if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54,59,100) ++# define av_frame_free av_freep ++# else ++# define av_frame_free avcodec_free_frame ++# endif + void av_frame_get_buffer(AVFrame *frame, int magic) { avpicture_alloc((AVPicture *)frame, frame->format, frame->width, frame->height); } +-void av_frame_copy(AVFrame *dst, AVFrame *src) { memcpy(dst->data[0], src->data[0], sizeof(uint8_t)*avpicture_get_size(PIX_FMT_RGB24, dst->width, dst->height)); } ++void av_frame_copy(AVFrame *dst, AVFrame *src) { memcpy(dst->data[0], src->data[0], sizeof(uint8_t)*avpicture_get_size(AV_PIX_FMT_RGB24, dst->width, dst->height)); } + #endif + + #define MAX_FILTER_SIZE 256 +@@ -25,7 +50,7 @@ image *image_init(const int width, const + i->frame = (AVFrame *) av_frame_alloc(); + i->frame->width = width; + i->frame->height = height; +- i->frame->format = PIX_FMT_RGB24; // best choice? ++ i->frame->format = AV_PIX_FMT_RGB24; // best choice? + av_frame_get_buffer(i->frame, 16); // magic number? + return i; + } +@@ -240,7 +265,9 @@ int image_write_png(const image *i, cons + encoder_context = avcodec_alloc_context3(encoder); + encoder_context->width = i->frame->width; + encoder_context->height = i->frame->height; +- encoder_context->pix_fmt = PIX_FMT_RGB24; ++ encoder_context->pix_fmt = AV_PIX_FMT_RGB24; ++ encoder_context->time_base.num = 1; ++ encoder_context->time_base.den = 1; + if (avcodec_open2(encoder_context, encoder, NULL) < 0) { + error("Could not open output codec."); + return -1; Copied: branches/2016Q4/multimedia/nordlicht/files/patch-source.c (from r425315, head/multimedia/nordlicht/files/patch-source.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ branches/2016Q4/multimedia/nordlicht/files/patch-source.c Fri Nov 4 12:06:15 2016 (r425316, copy of r425315, head/multimedia/nordlicht/files/patch-source.c) @@ -0,0 +1,66 @@ +For ffmpeg 3.x compatibility + +https://github.com/nordlicht/nordlicht/commit/5505a1898ab997a23b75553794eff6609447c43b.patch +https://github.com/nordlicht/nordlicht/commit/6e534a0c273756b88eecea7f510b6aa8a62dd789.patch + +--- source.c.orig 2016-01-24 19:35:50 UTC ++++ source.c +@@ -6,9 +6,34 @@ + #include <libavutil/avutil.h> + #include <libswscale/swscale.h> + ++// Changes for ffmpeg 3.0 ++#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(57,24,0) ++# include <libavutil/imgutils.h> ++# define av_free_packet av_packet_unref ++# define avpicture_get_size(fmt,w,h) av_image_get_buffer_size(fmt,w,h,1) ++#endif ++ ++// PIX_FMT was renamed to AV_PIX_FMT on this version ++#if LIBAVUTIL_VERSION_INT < AV_VERSION_INT(51,74,100) ++# define AVPixelFormat PixelFormat ++# define AV_PIX_FMT_RGB24 PIX_FMT_RGB24 ++# define AV_PIX_FMT_YUVJ420P PIX_FMT_YUVJ420P ++# define AV_PIX_FMT_YUVJ422P PIX_FMT_YUVJ422P ++# define AV_PIX_FMT_YUVJ440P PIX_FMT_YUVJ440P ++# define AV_PIX_FMT_YUVJ444P PIX_FMT_YUVJ444P ++# define AV_PIX_FMT_YUV420P PIX_FMT_YUV420P ++# define AV_PIX_FMT_YUV422P PIX_FMT_YUV422P ++# define AV_PIX_FMT_YUV440P PIX_FMT_YUV440P ++# define AV_PIX_FMT_YUV444P PIX_FMT_YUV444P ++#endif ++ + #if LIBAVUTIL_VERSION_INT < AV_VERSION_INT(52, 8, 0) +-#define av_frame_alloc avcodec_alloc_frame +-#define av_frame_free av_freep ++# define av_frame_alloc avcodec_alloc_frame ++# if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54,59,100) ++# define av_frame_free av_freep ++# else ++# define av_frame_free avcodec_free_frame ++# endif + #endif + + #define HEURISTIC_NUMBER_OF_FRAMES 1800 // how many frames will the heuristic look at? +@@ -244,13 +269,17 @@ source* source_init(const char *filename + s->scaleframe = av_frame_alloc(); + s->scaleframe->width = s->video->frame->width; + s->scaleframe->height = s->video->frame->height; +- s->scaleframe->format = PIX_FMT_RGB24; ++ s->scaleframe->format = AV_PIX_FMT_RGB24; + +- s->buffer = (uint8_t *)av_malloc(sizeof(uint8_t)*avpicture_get_size(PIX_FMT_RGB24, s->scaleframe->width, s->scaleframe->height)); +- avpicture_fill((AVPicture *)s->scaleframe, s->buffer, PIX_FMT_RGB24, s->video->frame->width, s->video->frame->height); ++ s->buffer = (uint8_t *)av_malloc(sizeof(uint8_t)*avpicture_get_size(s->scaleframe->format, s->scaleframe->width, s->scaleframe->height)); ++ #if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(57,24,0) ++ av_image_fill_arrays(s->scaleframe->data, s->scaleframe->linesize, s->buffer, s->scaleframe->format, s->video->frame->width, s->video->frame->height, 1); ++ #else ++ avpicture_fill((AVPicture *)s->scaleframe, s->buffer, s->scaleframe->format, s->video->frame->width, s->video->frame->height); ++ #endif + + s->sws_context = sws_getCachedContext(NULL, s->video->frame->width, s->video->frame->height, s->video->frame->format, +- s->scaleframe->width, s->scaleframe->height, PIX_FMT_RGB24, SWS_AREA, NULL, NULL, NULL); ++ s->scaleframe->width, s->scaleframe->height, s->scaleframe->format, SWS_AREA, NULL, NULL, NULL); + } + + s->keyframes = NULL;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201611041206.uA4C6Fvo014315>