From: Stefano Sabatini Date: Thu, 25 Nov 2010 20:50:23 +0000 (+0000) Subject: Make avfilter_default_free_buffer() an internal shared symbol, so that X-Git-Tag: v0.7b2~1836 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=4723bc286812ded7150cd543e6348d04683ce997;p=coroid%2Flibav_saccubus.git Make avfilter_default_free_buffer() an internal shared symbol, so that it can be referenced outside defaults.c. Originally committed as revision 25826 to svn://svn.ffmpeg.org/ffmpeg/trunk --- diff --git a/libavfilter/defaults.c b/libavfilter/defaults.c index c7b4b4724..e895ccdad 100644 --- a/libavfilter/defaults.c +++ b/libavfilter/defaults.c @@ -23,9 +23,10 @@ #include "libavcore/imgutils.h" #include "libavcore/samplefmt.h" #include "avfilter.h" +#include "internal.h" /* TODO: buffer pool. see comment for avfilter_default_get_video_buffer() */ -static void avfilter_default_free_buffer(AVFilterBuffer *ptr) +void ff_avfilter_default_free_buffer(AVFilterBuffer *ptr) { av_free(ptr->data[0]); av_free(ptr); @@ -54,7 +55,7 @@ AVFilterBufferRef *avfilter_default_get_video_buffer(AVFilterLink *link, int per pic->refcount = 1; ref->format = link->format; - pic->free = avfilter_default_free_buffer; + pic->free = ff_avfilter_default_free_buffer; av_image_fill_linesizes(pic->linesize, ref->format, ref->video->w); for (i = 0; i < 4; i++) @@ -108,7 +109,7 @@ AVFilterBufferRef *avfilter_default_get_audio_buffer(AVFilterLink *link, int per ref->perms = perms | AV_PERM_READ; samples->refcount = 1; - samples->free = avfilter_default_free_buffer; + samples->free = ff_avfilter_default_free_buffer; sample_size = av_get_bits_per_sample_fmt(sample_fmt) >>3; chans_nb = av_get_channel_layout_nb_channels(channel_layout); diff --git a/libavfilter/internal.h b/libavfilter/internal.h index 37d085da5..8f352ef77 100644 --- a/libavfilter/internal.h +++ b/libavfilter/internal.h @@ -57,4 +57,7 @@ int ff_avfilter_graph_config_links(AVFilterGraph *graphctx, AVClass *log_ctx); */ int ff_avfilter_graph_config_formats(AVFilterGraph *graphctx, AVClass *log_ctx); +/** default handler for freeing audio/video buffer when there are no references left */ +void ff_avfilter_default_free_buffer(AVFilterBuffer *buf); + #endif /* AVFILTER_INTERNAL_H */