diff --git a/ffmpeg.c b/ffmpeg.c index 6f70516f1cd80bd76bf1a028c87e06ba16b0a0e0..67dcb9ae0a71da33a156f2c2c9d3816265a70496 100644 --- a/ffmpeg.c +++ b/ffmpeg.c @@ -313,7 +313,7 @@ typedef struct AVInputStream { AVFilterContext *input_video_filter; AVFrame *filter_frame; int has_filter_frame; - AVFilterPicRef *picref; + AVFilterBufferRef *picref; #endif } AVInputStream; @@ -361,10 +361,10 @@ static int output_query_formats(AVFilterContext *ctx) } static int get_filtered_video_pic(AVFilterContext *ctx, - AVFilterPicRef **picref, AVFrame *pic2, + AVFilterBufferRef **picref, AVFrame *pic2, uint64_t *pts) { - AVFilterPicRef *pic; + AVFilterBufferRef *pic; if(avfilter_request_frame(ctx->inputs[0])) return -1; diff --git a/ffplay.c b/ffplay.c index c976f09ed5cf3dc805fec3e49536d4c562da47a7..9b523de84a4ff63ca7cecf175cf4310b715d65fa 100644 --- a/ffplay.c +++ b/ffplay.c @@ -105,7 +105,7 @@ typedef struct VideoPicture { enum PixelFormat pix_fmt; #if CONFIG_AVFILTER - AVFilterPicRef *picref; + AVFilterBufferRef *picref; #endif } VideoPicture; @@ -1560,7 +1560,7 @@ typedef struct { static int input_get_buffer(AVCodecContext *codec, AVFrame *pic) { AVFilterContext *ctx = codec->opaque; - AVFilterPicRef *ref; + AVFilterBufferRef *ref; int perms = AV_PERM_WRITE; int i, w, h, stride[4]; unsigned edge; @@ -1609,7 +1609,7 @@ static void input_release_buffer(AVCodecContext *codec, AVFrame *pic) static int input_reget_buffer(AVCodecContext *codec, AVFrame *pic) { - AVFilterPicRef *ref = pic->opaque; + AVFilterBufferRef *ref = pic->opaque; if (pic->data[0] == NULL) { pic->buffer_hints |= FF_BUFFER_HINTS_READABLE; @@ -1656,7 +1656,7 @@ static void input_uninit(AVFilterContext *ctx) static int input_request_frame(AVFilterLink *link) { FilterPriv *priv = link->src->priv; - AVFilterPicRef *picref; + AVFilterBufferRef *picref; int64_t pts = 0; AVPacket pkt; int ret; @@ -1741,7 +1741,7 @@ static int output_query_formats(AVFilterContext *ctx) static int get_filtered_video_frame(AVFilterContext *ctx, AVFrame *frame, int64_t *pts, int64_t *pos) { - AVFilterPicRef *pic; + AVFilterBufferRef *pic; if(avfilter_request_frame(ctx->inputs[0])) return -1; diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c index 1c7c3a7f23967b7b2a869851e0ad5cfbb333f906..bef0dd69ed6c5be96fbd9b4c930552926169d330 100644 --- a/libavfilter/avfilter.c +++ b/libavfilter/avfilter.c @@ -45,16 +45,16 @@ const char *avfilter_license(void) #define link_dpad(link) link->dst-> input_pads[link->dstpad] #define link_spad(link) link->src->output_pads[link->srcpad] -AVFilterPicRef *avfilter_ref_pic(AVFilterPicRef *ref, int pmask) +AVFilterBufferRef *avfilter_ref_pic(AVFilterBufferRef *ref, int pmask) { - AVFilterPicRef *ret = av_malloc(sizeof(AVFilterPicRef)); + AVFilterBufferRef *ret = av_malloc(sizeof(AVFilterBufferRef)); *ret = *ref; ret->perms &= pmask; ret->pic->refcount ++; return ret; } -void avfilter_unref_pic(AVFilterPicRef *ref) +void avfilter_unref_pic(AVFilterBufferRef *ref) { if(!(--ref->pic->refcount)) ref->pic->free(ref->pic); @@ -171,7 +171,7 @@ int avfilter_config_links(AVFilterContext *filter) return 0; } -void ff_dprintf_picref(void *ctx, AVFilterPicRef *picref, int end) +void ff_dprintf_picref(void *ctx, AVFilterBufferRef *picref, int end) { dprintf(ctx, "picref[%p data[%p, %p, %p, %p] linesize[%d, %d, %d, %d] pts:%"PRId64" pos:%"PRId64" a:%d/%d s:%dx%d]%s", @@ -194,9 +194,9 @@ void ff_dprintf_link(void *ctx, AVFilterLink *link, int end) end ? "\n" : ""); } -AVFilterPicRef *avfilter_get_video_buffer(AVFilterLink *link, int perms, int w, int h) +AVFilterBufferRef *avfilter_get_video_buffer(AVFilterLink *link, int perms, int w, int h) { - AVFilterPicRef *ret = NULL; + AVFilterBufferRef *ret = NULL; FF_DPRINTF_START(NULL, get_video_buffer); ff_dprintf_link(NULL, link, 0); dprintf(NULL, " perms:%d w:%d h:%d\n", perms, w, h); @@ -242,9 +242,9 @@ int avfilter_poll_frame(AVFilterLink *link) /* XXX: should we do the duplicating of the picture ref here, instead of * forcing the source filter to do it? */ -void avfilter_start_frame(AVFilterLink *link, AVFilterPicRef *picref) +void avfilter_start_frame(AVFilterLink *link, AVFilterBufferRef *picref) { - void (*start_frame)(AVFilterLink *, AVFilterPicRef *); + void (*start_frame)(AVFilterLink *, AVFilterBufferRef *); AVFilterPad *dst = &link_dpad(link); FF_DPRINTF_START(NULL, start_frame); ff_dprintf_link(NULL, link, 0); dprintf(NULL, " "); ff_dprintf_picref(NULL, picref, 1); diff --git a/libavfilter/avfilter.h b/libavfilter/avfilter.h index 5746b6c9982952d3af83df397142d24364ceec6f..4c4cf11b75900f16272d9128c719a5f92b9d6106 100644 --- a/libavfilter/avfilter.h +++ b/libavfilter/avfilter.h @@ -25,7 +25,7 @@ #include "libavutil/avutil.h" #define LIBAVFILTER_VERSION_MAJOR 1 -#define LIBAVFILTER_VERSION_MINOR 28 +#define LIBAVFILTER_VERSION_MINOR 29 #define LIBAVFILTER_VERSION_MICRO 0 #define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \ @@ -62,7 +62,7 @@ typedef struct AVFilterPad AVFilterPad; /** * A reference-counted buffer data type used by the filter system. Filters * should not store pointers to this structure directly, but instead use the - * AVFilterPicRef structure below. + * AVFilterBufferRef structure below. */ typedef struct AVFilterBuffer { @@ -96,7 +96,7 @@ typedef struct AVFilterBuffer * * TODO: add anything necessary for frame reordering */ -typedef struct AVFilterPicRef +typedef struct AVFilterBufferRef { AVFilterBuffer *pic; ///< the picture that this is a reference to uint8_t *data[4]; ///< picture data for each plane @@ -114,13 +114,13 @@ typedef struct AVFilterPicRef int interlaced; ///< is frame interlaced int top_field_first; -} AVFilterPicRef; +} AVFilterBufferRef; /** * Copy properties of src to dst, without copying the actual video * data. */ -static inline void avfilter_copy_picref_props(AVFilterPicRef *dst, AVFilterPicRef *src) +static inline void avfilter_copy_picref_props(AVFilterBufferRef *dst, AVFilterBufferRef *src) { dst->pts = src->pts; dst->pos = src->pos; @@ -139,14 +139,14 @@ static inline void avfilter_copy_picref_props(AVFilterPicRef *dst, AVFilterPicRe * @return a new reference to the picture with the same properties as the * old, excluding any permissions denied by pmask */ -AVFilterPicRef *avfilter_ref_pic(AVFilterPicRef *ref, int pmask); +AVFilterBufferRef *avfilter_ref_pic(AVFilterBufferRef *ref, int pmask); /** * Remove a reference to a picture. If this is the last reference to the * picture, the picture itself is also automatically freed. * @param ref reference to the picture */ -void avfilter_unref_pic(AVFilterPicRef *ref); +void avfilter_unref_pic(AVFilterBufferRef *ref); /** * A list of supported formats for one end of a filter link. This is used @@ -323,7 +323,7 @@ struct AVFilterPad * * Input video pads only. */ - void (*start_frame)(AVFilterLink *link, AVFilterPicRef *picref); + void (*start_frame)(AVFilterLink *link, AVFilterBufferRef *picref); /** * Callback function to get a buffer. If NULL, the filter system will @@ -331,7 +331,7 @@ struct AVFilterPad * * Input video pads only. */ - AVFilterPicRef *(*get_video_buffer)(AVFilterLink *link, int perms, int w, int h); + AVFilterBufferRef *(*get_video_buffer)(AVFilterLink *link, int perms, int w, int h); /** * Callback called after the slices of a frame are completely sent. If @@ -388,7 +388,7 @@ struct AVFilterPad }; /** default handler for start_frame() for video inputs */ -void avfilter_default_start_frame(AVFilterLink *link, AVFilterPicRef *picref); +void avfilter_default_start_frame(AVFilterLink *link, AVFilterBufferRef *picref); /** default handler for draw_slice() for video inputs */ void avfilter_default_draw_slice(AVFilterLink *link, int y, int h, int slice_dir); /** default handler for end_frame() for video inputs */ @@ -398,7 +398,7 @@ int avfilter_default_config_output_link(AVFilterLink *link); /** default handler for config_props() for video inputs */ int avfilter_default_config_input_link (AVFilterLink *link); /** default handler for get_video_buffer() for video inputs */ -AVFilterPicRef *avfilter_default_get_video_buffer(AVFilterLink *link, +AVFilterBufferRef *avfilter_default_get_video_buffer(AVFilterLink *link, int perms, int w, int h); /** * A helper for query_formats() which sets all links to the same list of @@ -410,7 +410,7 @@ void avfilter_set_common_formats(AVFilterContext *ctx, AVFilterFormats *formats) int avfilter_default_query_formats(AVFilterContext *ctx); /** start_frame() handler for filters which simply pass video along */ -void avfilter_null_start_frame(AVFilterLink *link, AVFilterPicRef *picref); +void avfilter_null_start_frame(AVFilterLink *link, AVFilterBufferRef *picref); /** draw_slice() handler for filters which simply pass video along */ void avfilter_null_draw_slice(AVFilterLink *link, int y, int h, int slice_dir); @@ -419,7 +419,7 @@ void avfilter_null_draw_slice(AVFilterLink *link, int y, int h, int slice_dir); void avfilter_null_end_frame(AVFilterLink *link); /** get_video_buffer() handler for filters which simply pass video along */ -AVFilterPicRef *avfilter_null_get_video_buffer(AVFilterLink *link, +AVFilterBufferRef *avfilter_null_get_video_buffer(AVFilterLink *link, int perms, int w, int h); /** @@ -530,10 +530,10 @@ struct AVFilterLink * for the destination. This should not be accessed directly by the * filters. */ - AVFilterPicRef *srcpic; + AVFilterBufferRef *srcpic; - AVFilterPicRef *cur_pic; - AVFilterPicRef *outpic; + AVFilterBufferRef *cur_pic; + AVFilterBufferRef *outpic; }; /** @@ -564,7 +564,7 @@ int avfilter_config_links(AVFilterContext *filter); * @return A reference to the picture. This must be unreferenced with * avfilter_unref_pic when you are finished with it. */ -AVFilterPicRef *avfilter_get_video_buffer(AVFilterLink *link, int perms, +AVFilterBufferRef *avfilter_get_video_buffer(AVFilterLink *link, int perms, int w, int h); /** @@ -590,7 +590,7 @@ int avfilter_poll_frame(AVFilterLink *link); * portion. The receiving filter will free this reference when * it no longer needs it. */ -void avfilter_start_frame(AVFilterLink *link, AVFilterPicRef *picref); +void avfilter_start_frame(AVFilterLink *link, AVFilterBufferRef *picref); /** * Notifie the next filter that the current frame has finished. diff --git a/libavfilter/defaults.c b/libavfilter/defaults.c index 8f58cfe069edc741a6f1caa49f7c19a07bf2a03e..db53d252c74c42646bcb8a519ca383a83e5fe7ac 100644 --- a/libavfilter/defaults.c +++ b/libavfilter/defaults.c @@ -32,10 +32,10 @@ static void avfilter_default_free_buffer(AVFilterBuffer *ptr) /* TODO: set the buffer's priv member to a context structure for the whole * filter chain. This will allow for a buffer pool instead of the constant * alloc & free cycle currently implemented. */ -AVFilterPicRef *avfilter_default_get_video_buffer(AVFilterLink *link, int perms, int w, int h) +AVFilterBufferRef *avfilter_default_get_video_buffer(AVFilterLink *link, int perms, int w, int h) { AVFilterBuffer *pic = av_mallocz(sizeof(AVFilterBuffer)); - AVFilterPicRef *ref = av_mallocz(sizeof(AVFilterPicRef)); + AVFilterBufferRef *ref = av_mallocz(sizeof(AVFilterBufferRef)); int i, tempsize; char *buf; @@ -65,7 +65,7 @@ AVFilterPicRef *avfilter_default_get_video_buffer(AVFilterLink *link, int perms, return ref; } -void avfilter_default_start_frame(AVFilterLink *link, AVFilterPicRef *picref) +void avfilter_default_start_frame(AVFilterLink *link, AVFilterBufferRef *picref) { AVFilterLink *out = NULL; @@ -168,7 +168,7 @@ int avfilter_default_query_formats(AVFilterContext *ctx) return 0; } -void avfilter_null_start_frame(AVFilterLink *link, AVFilterPicRef *picref) +void avfilter_null_start_frame(AVFilterLink *link, AVFilterBufferRef *picref) { avfilter_start_frame(link->dst->outputs[0], picref); } @@ -183,7 +183,7 @@ void avfilter_null_end_frame(AVFilterLink *link) avfilter_end_frame(link->dst->outputs[0]); } -AVFilterPicRef *avfilter_null_get_video_buffer(AVFilterLink *link, int perms, int w, int h) +AVFilterBufferRef *avfilter_null_get_video_buffer(AVFilterLink *link, int perms, int w, int h) { return avfilter_get_video_buffer(link->dst->outputs[0], perms, w, h); } diff --git a/libavfilter/internal.h b/libavfilter/internal.h index 9ddde36e154a8cbd6bc4c8a9895ad8b5c1f0294b..3687726e136a51b0a8c4f4d71460bf7036194e37 100644 --- a/libavfilter/internal.h +++ b/libavfilter/internal.h @@ -26,7 +26,7 @@ #include "avfilter.h" -void ff_dprintf_picref(void *ctx, AVFilterPicRef *picref, int end); +void ff_dprintf_picref(void *ctx, AVFilterBufferRef *picref, int end); void ff_dprintf_link(void *ctx, AVFilterLink *link, int end); diff --git a/libavfilter/vf_aspect.c b/libavfilter/vf_aspect.c index 2627722a368771d197260b3c1a91e29e237abd0f..bd186493021e6d799cf0434335f1807e8aa2a248 100644 --- a/libavfilter/vf_aspect.c +++ b/libavfilter/vf_aspect.c @@ -56,7 +56,7 @@ static av_cold int init(AVFilterContext *ctx, const char *args, void *opaque) return 0; } -static void start_frame(AVFilterLink *link, AVFilterPicRef *picref) +static void start_frame(AVFilterLink *link, AVFilterBufferRef *picref) { AspectContext *aspect = link->dst->priv; diff --git a/libavfilter/vf_crop.c b/libavfilter/vf_crop.c index 83cc99848bc738041df9edac631a3b0f30dc0d63..c8c8538cc445abc515beb598d2adb309fcc087fb 100644 --- a/libavfilter/vf_crop.c +++ b/libavfilter/vf_crop.c @@ -129,10 +129,10 @@ static int config_output(AVFilterLink *link) return 0; } -static void start_frame(AVFilterLink *link, AVFilterPicRef *picref) +static void start_frame(AVFilterLink *link, AVFilterBufferRef *picref) { CropContext *crop = link->dst->priv; - AVFilterPicRef *ref2 = avfilter_ref_pic(picref, ~0); + AVFilterBufferRef *ref2 = avfilter_ref_pic(picref, ~0); int i; ref2->w = crop->w; diff --git a/libavfilter/vf_pad.c b/libavfilter/vf_pad.c index 76bc4d38ca8b8b0107ae7857ae4cdfcb7f9d7bd0..e6b9e48ca162f84bdf4f995336edd87316207e1a 100644 --- a/libavfilter/vf_pad.c +++ b/libavfilter/vf_pad.c @@ -83,7 +83,7 @@ static int fill_line_with_color(uint8_t *line[4], int line_step[4], int w, uint8 return 0; } -static void draw_rectangle(AVFilterPicRef *outpic, uint8_t *line[4], int line_step[4], +static void draw_rectangle(AVFilterBufferRef *outpic, uint8_t *line[4], int line_step[4], int hsub, int vsub, int x, int y, int w, int h) { int i, plane; @@ -221,11 +221,11 @@ static int config_output(AVFilterLink *outlink) return 0; } -static AVFilterPicRef *get_video_buffer(AVFilterLink *inlink, int perms, int w, int h) +static AVFilterBufferRef *get_video_buffer(AVFilterLink *inlink, int perms, int w, int h) { PadContext *pad = inlink->dst->priv; - AVFilterPicRef *picref = avfilter_get_video_buffer(inlink->dst->outputs[0], perms, + AVFilterBufferRef *picref = avfilter_get_video_buffer(inlink->dst->outputs[0], perms, w + (pad->w - pad->in_w), h + (pad->h - pad->in_h)); int plane; @@ -241,10 +241,10 @@ static AVFilterPicRef *get_video_buffer(AVFilterLink *inlink, int perms, int w, return picref; } -static void start_frame(AVFilterLink *inlink, AVFilterPicRef *inpicref) +static void start_frame(AVFilterLink *inlink, AVFilterBufferRef *inpicref) { PadContext *pad = inlink->dst->priv; - AVFilterPicRef *outpicref = avfilter_ref_pic(inpicref, ~0); + AVFilterBufferRef *outpicref = avfilter_ref_pic(inpicref, ~0); int plane; inlink->dst->outputs[0]->outpic = outpicref; @@ -292,7 +292,7 @@ static void draw_send_bar_slice(AVFilterLink *link, int y, int h, int slice_dir, static void draw_slice(AVFilterLink *link, int y, int h, int slice_dir) { PadContext *pad = link->dst->priv; - AVFilterPicRef *outpic = link->dst->outputs[0]->outpic; + AVFilterBufferRef *outpic = link->dst->outputs[0]->outpic; y += pad->y; @@ -427,7 +427,7 @@ static int color_config_props(AVFilterLink *inlink) static int color_request_frame(AVFilterLink *link) { ColorContext *color = link->src->priv; - AVFilterPicRef *picref = avfilter_get_video_buffer(link, AV_PERM_WRITE, color->w, color->h); + AVFilterBufferRef *picref = avfilter_get_video_buffer(link, AV_PERM_WRITE, color->w, color->h); picref->pixel_aspect = (AVRational) {1, 1}; picref->pts = av_rescale_q(color->pts++, color->time_base, AV_TIME_BASE_Q); picref->pos = 0; diff --git a/libavfilter/vf_pixdesctest.c b/libavfilter/vf_pixdesctest.c index 179e2a8aa8e3579ac90553f8d65a0cd8fe1f5561..c9397b52800c1968f69a896b583dc6b7f6ece99d 100644 --- a/libavfilter/vf_pixdesctest.c +++ b/libavfilter/vf_pixdesctest.c @@ -48,11 +48,11 @@ static int config_props(AVFilterLink *inlink) return 0; } -static void start_frame(AVFilterLink *inlink, AVFilterPicRef *picref) +static void start_frame(AVFilterLink *inlink, AVFilterBufferRef *picref) { PixdescTestContext *priv = inlink->dst->priv; AVFilterLink *outlink = inlink->dst->outputs[0]; - AVFilterPicRef *outpicref; + AVFilterBufferRef *outpicref; int i; outlink->outpic = avfilter_get_video_buffer(outlink, AV_PERM_WRITE, @@ -80,8 +80,8 @@ static void start_frame(AVFilterLink *inlink, AVFilterPicRef *picref) static void draw_slice(AVFilterLink *inlink, int y, int h, int slice_dir) { PixdescTestContext *priv = inlink->dst->priv; - AVFilterPicRef *inpic = inlink->cur_pic; - AVFilterPicRef *outpic = inlink->dst->outputs[0]->outpic; + AVFilterBufferRef *inpic = inlink->cur_pic; + AVFilterBufferRef *outpic = inlink->dst->outputs[0]->outpic; int i, c, w = inlink->w; for (c = 0; c < priv->pix_desc->nb_components; c++) { diff --git a/libavfilter/vf_scale.c b/libavfilter/vf_scale.c index c75cf7c87fb10e3386d0aed3f2cdf83e4f257074..4608de5a336bd2ea0c6b2efa33fd6e6c6f017865 100644 --- a/libavfilter/vf_scale.c +++ b/libavfilter/vf_scale.c @@ -142,11 +142,11 @@ static int config_props(AVFilterLink *outlink) return !scale->sws; } -static void start_frame(AVFilterLink *link, AVFilterPicRef *picref) +static void start_frame(AVFilterLink *link, AVFilterBufferRef *picref) { ScaleContext *scale = link->dst->priv; AVFilterLink *outlink = link->dst->outputs[0]; - AVFilterPicRef *outpicref; + AVFilterBufferRef *outpicref; scale->hsub = av_pix_fmt_descriptors[link->format].log2_chroma_w; scale->vsub = av_pix_fmt_descriptors[link->format].log2_chroma_h; @@ -169,7 +169,7 @@ static void draw_slice(AVFilterLink *link, int y, int h, int slice_dir) { ScaleContext *scale = link->dst->priv; int out_h; - AVFilterPicRef *cur_pic = link->cur_pic; + AVFilterBufferRef *cur_pic = link->cur_pic; const uint8_t *data[4]; if (scale->slice_y == 0 && slice_dir == -1) diff --git a/libavfilter/vf_slicify.c b/libavfilter/vf_slicify.c index 35e05da933dba9eee9c6fa5dada3a98f9dbd6dfc..dadfd26d8b43f246324f9e8ecc7ec504f1e539dd 100644 --- a/libavfilter/vf_slicify.c +++ b/libavfilter/vf_slicify.c @@ -57,7 +57,7 @@ static int config_props(AVFilterLink *link) return 0; } -static void start_frame(AVFilterLink *link, AVFilterPicRef *picref) +static void start_frame(AVFilterLink *link, AVFilterBufferRef *picref) { SliceContext *slice = link->dst->priv; diff --git a/libavfilter/vf_unsharp.c b/libavfilter/vf_unsharp.c index d2314a3f83a83087fe3d96b974eb46cf4de369cf..81d950e68d46d6e6039a07bbe90920ff3961147b 100644 --- a/libavfilter/vf_unsharp.c +++ b/libavfilter/vf_unsharp.c @@ -195,8 +195,8 @@ static av_cold void uninit(AVFilterContext *ctx) static void end_frame(AVFilterLink *link) { UnsharpContext *unsharp = link->dst->priv; - AVFilterPicRef *in = link->cur_pic; - AVFilterPicRef *out = link->dst->outputs[0]->outpic; + AVFilterBufferRef *in = link->cur_pic; + AVFilterBufferRef *out = link->dst->outputs[0]->outpic; unsharpen(out->data[0], in->data[0], out->linesize[0], in->linesize[0], link->w, link->h, &unsharp->luma); unsharpen(out->data[1], in->data[1], out->linesize[1], in->linesize[1], CHROMA_WIDTH(link), CHROMA_HEIGHT(link), &unsharp->chroma); diff --git a/libavfilter/vf_vflip.c b/libavfilter/vf_vflip.c index 0dfcb35429f5a09af481d9cb43a433f89c26420c..9d5d75ff22652ff79adf6191810c1078856b67f1 100644 --- a/libavfilter/vf_vflip.c +++ b/libavfilter/vf_vflip.c @@ -39,13 +39,13 @@ static int config_input(AVFilterLink *link) return 0; } -static AVFilterPicRef *get_video_buffer(AVFilterLink *link, int perms, +static AVFilterBufferRef *get_video_buffer(AVFilterLink *link, int perms, int w, int h) { FlipContext *flip = link->dst->priv; int i; - AVFilterPicRef *picref = avfilter_get_video_buffer(link->dst->outputs[0], + AVFilterBufferRef *picref = avfilter_get_video_buffer(link->dst->outputs[0], perms, w, h); for (i = 0; i < 4; i ++) { @@ -60,7 +60,7 @@ static AVFilterPicRef *get_video_buffer(AVFilterLink *link, int perms, return picref; } -static void start_frame(AVFilterLink *link, AVFilterPicRef *picref) +static void start_frame(AVFilterLink *link, AVFilterBufferRef *picref) { FlipContext *flip = link->dst->priv; int i; diff --git a/libavfilter/vsink_nullsink.c b/libavfilter/vsink_nullsink.c index d11912f7dd424b38a368f49918f94f8525735ba1..1dea2008e634e53e10a7b0dafcdebb55955c25dd 100644 --- a/libavfilter/vsink_nullsink.c +++ b/libavfilter/vsink_nullsink.c @@ -18,7 +18,7 @@ #include "avfilter.h" -static void start_frame(AVFilterLink *link, AVFilterPicRef *picref) +static void start_frame(AVFilterLink *link, AVFilterBufferRef *picref) { } diff --git a/libavfilter/vsrc_buffer.c b/libavfilter/vsrc_buffer.c index 57dea9469501dd6ef587a9d27745f662dff79044..aa7cb4572838efc5b8c2832feac7f23cbe018a08 100644 --- a/libavfilter/vsrc_buffer.c +++ b/libavfilter/vsrc_buffer.c @@ -105,7 +105,7 @@ static int config_props(AVFilterLink *link) static int request_frame(AVFilterLink *link) { BufferSourceContext *c = link->src->priv; - AVFilterPicRef *picref; + AVFilterBufferRef *picref; if (!c->has_frame) { av_log(link->src, AV_LOG_ERROR,