From 6ae82d1ec7d1a0d6a3d4e62880476bea2621b6ee Mon Sep 17 00:00:00 2001 From: Vitor Sessak Date: Fri, 15 Feb 2008 21:36:33 +0000 Subject: [PATCH] Allow giving filter instances names, in anticipation of the upcoming AVFilterGraph structure and related functions. Commited in SoC by Bobby Bingham on 2007-07-14 19:33:28 Originally committed as revision 11987 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavfilter/avfilter.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c index 51fdec0fb2..dbb3e9d6a7 100644 --- a/libavfilter/avfilter.c +++ b/libavfilter/avfilter.c @@ -288,13 +288,14 @@ static const char *filter_name(void *p) return filter->filter->name; } -AVFilterContext *avfilter_create(AVFilter *filter) +AVFilterContext *avfilter_create(AVFilter *filter, char *inst_name) { AVFilterContext *ret = av_malloc(sizeof(AVFilterContext)); ret->av_class = av_mallocz(sizeof(AVClass)); ret->av_class->item_name = filter_name; ret->filter = filter; + ret->name = inst_name ? strdup(inst_name) : NULL; ret->inputs = av_mallocz(sizeof(AVFilterLink*) * pad_count(filter->inputs)); ret->outputs = av_mallocz(sizeof(AVFilterLink*) * pad_count(filter->outputs)); ret->priv = av_mallocz(filter->priv_size); @@ -320,6 +321,7 @@ void avfilter_destroy(AVFilterContext *filter) av_free(filter->outputs[i]); } + free (filter->name); av_free(filter->inputs); av_free(filter->outputs); av_free(filter->priv); @@ -327,12 +329,12 @@ void avfilter_destroy(AVFilterContext *filter) av_free(filter); } -AVFilterContext *avfilter_create_by_name(char *name) +AVFilterContext *avfilter_create_by_name(char *name, char *inst_name) { AVFilter *filt; if(!(filt = avfilter_get_by_name(name))) return NULL; - return avfilter_create(filt); + return avfilter_create(filt, inst_name); } int avfilter_init_filter(AVFilterContext *filter, const char *args)