[FFmpeg-devel] [PATCH] avfilter/graphparser: fix filter instance name when an id is provided

James Almer jamrial at gmail.com
Thu Mar 2 15:02:43 EET 2023


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

Fixes ticket #10226.

Signed-off-by: James Almer <jamrial at gmail.com>
---
 libavfilter/graphparser.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/libavfilter/graphparser.c b/libavfilter/graphparser.c
index 8e12416ccb..4347131fad 100644
--- a/libavfilter/graphparser.c
+++ b/libavfilter/graphparser.c
@@ -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)
-- 
2.39.2



More information about the ffmpeg-devel mailing list