avfilter/graphparser: fix filter instance name when an id is provided

Restores the behavior of naming the instance filter@id, which was accidentally changed
to simpy id in commit f17051eaae.

Fixes ticket #10226.

Signed-off-by: James Almer <jamrial@gmail.com>
This commit is contained in:
James Almer 2023-03-02 10:00:02 -03:00
parent 912ac82a3c
commit 2fd86d9afa
1 changed files with 4 additions and 3 deletions

View File

@ -532,8 +532,7 @@ int avfilter_graph_segment_create_filters(AVFilterGraphSegment *seg, int flags)
for (size_t j = 0; j < ch->nb_filters; j++) {
AVFilterParams *p = ch->filters[j];
const AVFilter *f = avfilter_get_by_name(p->filter_name);
char inst_name[30], *name = p->instance_name ? p->instance_name :
inst_name;
char name[64];
// skip already processed filters
if (p->filter || !p->filter_name)
@ -546,7 +545,9 @@ int avfilter_graph_segment_create_filters(AVFilterGraphSegment *seg, int flags)
}
if (!p->instance_name)
snprintf(inst_name, sizeof(inst_name), "Parsed_%s_%zu", f->name, idx);
snprintf(name, sizeof(name), "Parsed_%s_%zu", f->name, idx);
else
snprintf(name, sizeof(name), "%s@%s", f->name, p->instance_name);
p->filter = avfilter_graph_alloc_filter(seg->graph, f, name);
if (!p->filter)