Commited in SoC by Bobby Bingham on 2007-08-17 23:39:55 Originally committed as revision 12703 to svn://svn.ffmpeg.org/ffmpeg/trunk
Unified · Split
| @@ -430,6 +430,7 @@ int avfilter_graph_config_links(AVFilterContext *graphctx) · 429 unmodified lines | |||
| 430 | 430 | ||
| 431 | static AVFilterContext *create_filter_with_args(const char *filt, void *opaque) | 431 | static AVFilterContext *create_filter_with_args(const char *filt, void *opaque) |
| 432 | { | 432 | { |
| 433 | AVFilter *filterdef; | ||
| 433 | AVFilterContext *ret; | 434 | AVFilterContext *ret; |
| 434 | char *filter = av_strdup(filt); /* copy - don't mangle the input string */ | 435 | char *filter = av_strdup(filt); /* copy - don't mangle the input string */ |
| 435 | char *name, *args; | 436 | char *name, *args; |
| @@ -446,7 +447,8 @@ static AVFilterContext *create_filter_with_args(const char *filt, void *opaque) · 10 unmodified lines | |||
| 446 | av_log(NULL, AV_LOG_INFO, "creating filter \"%s\" with args \"%s\"\n", | 447 | av_log(NULL, AV_LOG_INFO, "creating filter \"%s\" with args \"%s\"\n", |
| 447 | name, args ? args : "(none)"); | 448 | name, args ? args : "(none)"); |
| 448 | 449 | ||
| 449 | if((ret = avfilter_create_by_name(name, NULL))) { | 450 | if((filterdef = avfilter_get_by_name(name)) && |
| 451 | (ret = avfilter_open(filterdef, NULL))) { | ||
| 450 | if(avfilter_init_filter(ret, args, opaque)) { | 452 | if(avfilter_init_filter(ret, args, opaque)) { |
| 451 | av_log(NULL, AV_LOG_ERROR, "error initializing filter!\n"); | 453 | av_log(NULL, AV_LOG_ERROR, "error initializing filter!\n"); |
| 452 | avfilter_destroy(ret); | 454 | avfilter_destroy(ret); |
| @@ -545,7 +547,7 @@ static int init(AVFilterContext *ctx, const char *args, void *opaque) · 92 unmodified lines | |||
| 545 | if(!args) | 547 | if(!args) |
| 546 | return 0; | 548 | return 0; |
| 547 | 549 | ||
| 548 | if(!(gctx->link_filter = avfilter_create(&vf_graph_dummy, NULL))) | 550 | if(!(gctx->link_filter = avfilter_open(&vf_graph_dummy, NULL))) |
| 549 | return -1; | 551 | return -1; |
| 550 | if(avfilter_init_filter(gctx->link_filter, NULL, ctx)) | 552 | if(avfilter_init_filter(gctx->link_filter, NULL, ctx)) |
| 551 | goto fail; | 553 | goto fail; |
| @@ -578,9 +580,12 @@ static int graph_load_from_desc(AVFilterContext *ctx, AVFilterGraphDesc *desc) · 26 unmodified lines | |||
| 578 | AVFilterGraphDescExport *curpad; | 580 | AVFilterGraphDescExport *curpad; |
| 579 | AVFilterContext *filt, *filtb; | 581 | AVFilterContext *filt, *filtb; |
| 580 | 582 | ||
| 583 | AVFilter *filterdef; | ||
| 584 | |||
| 581 | /* create all filters */ | 585 | /* create all filters */ |
| 582 | for(curfilt = desc->filters; curfilt; curfilt = curfilt->next) { | 586 | for(curfilt = desc->filters; curfilt; curfilt = curfilt->next) { |
| 583 | if(!(filt = avfilter_create_by_name(curfilt->filter, curfilt->name))) { | 587 | if(!(filterdef = avfilter_get_by_name(curfilt->filter)) || |
| 588 | !(filt = avfilter_open(filterdef, curfilt->name))) { | ||
| 584 | av_log(ctx, AV_LOG_ERROR, "error creating filter\n"); | 589 | av_log(ctx, AV_LOG_ERROR, "error creating filter\n"); |
| 585 | goto fail; | 590 | goto fail; |
| 586 | } | 591 | } |
| @@ -639,7 +644,7 @@ static int init_desc(AVFilterContext *ctx, const char *args, void *opaque) · 52 unmodified lines | |||
| 639 | if(!opaque) | 644 | if(!opaque) |
| 640 | return -1; | 645 | return -1; |
| 641 | 646 | ||
| 642 | if(!(gctx->link_filter = avfilter_create(&vf_graph_dummy, NULL))) | 647 | if(!(gctx->link_filter = avfilter_open(&vf_graph_dummy, NULL))) |
| 643 | return -1; | 648 | return -1; |
| 644 | if(avfilter_init_filter(gctx->link_filter, NULL, ctx)) | 649 | if(avfilter_init_filter(gctx->link_filter, NULL, ctx)) |
| 645 | goto fail; | 650 | goto fail; |