From 36dc00de529fb4cd182e02f927597eef9514b886 Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Tue, 11 Jan 2011 23:53:17 +0000 Subject: [PATCH] Add w,h,format back into AVFilterBuffer, these are required for direct rendering. These fields are needed to be able to know which area of memory is allocated and which is off limits. This reverts 24291 and parts of r24424. Originally committed as revision 26314 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavfilter/avfilter.c | 6 +++--- libavfilter/avfilter.h | 5 ++++- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c index 104a3b4956..ebb2165184 100644 --- a/libavfilter/avfilter.c +++ b/libavfilter/avfilter.c @@ -283,15 +283,15 @@ avfilter_get_video_buffer_ref_from_arrays(uint8_t *data[4], int linesize[4], int if (!(picref->video = av_mallocz(sizeof(AVFilterBufferRefVideoProps)))) goto fail; - picref->video->w = w; - picref->video->h = h; + pic->w = picref->video->w = w; + pic->h = picref->video->h = h; /* make sure the buffer gets read permission or it's useless for output */ picref->perms = perms | AV_PERM_READ; pic->refcount = 1; picref->type = AVMEDIA_TYPE_VIDEO; - picref->format = format; + pic->format = picref->format = format; memcpy(pic->data, data, sizeof(pic->data)); memcpy(pic->linesize, linesize, sizeof(pic->linesize)); diff --git a/libavfilter/avfilter.h b/libavfilter/avfilter.h index 02b513fb75..597e7a71d0 100644 --- a/libavfilter/avfilter.h +++ b/libavfilter/avfilter.h @@ -27,7 +27,7 @@ #include "libavcore/samplefmt.h" #define LIBAVFILTER_VERSION_MAJOR 1 -#define LIBAVFILTER_VERSION_MINOR 72 +#define LIBAVFILTER_VERSION_MINOR 73 #define LIBAVFILTER_VERSION_MICRO 0 #define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \ @@ -80,6 +80,9 @@ typedef struct AVFilterBuffer { * reallocating it from scratch. */ void (*free)(struct AVFilterBuffer *buf); + + int format; ///< media format + int w, h; ///< width and height of the allocated buffer } AVFilterBuffer; #define AV_PERM_READ 0x01 ///< can read from the buffer