[FFmpeg-devel] [PATCH 10/10] lavfi: move AVFilterLink.graph to FilterLink
Anton Khirnov
anton at khirnov.net
Sun Aug 11 17:42:11 EEST 2024
---
libavfilter/avfilter.c | 6 +++---
libavfilter/avfilter.h | 5 -----
libavfilter/avfiltergraph.c | 2 +-
libavfilter/f_sendcmd.c | 2 +-
libavfilter/filters.h | 5 +++++
5 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c
index 055db01e02..43d7c9f4ab 100644
--- a/libavfilter/avfilter.c
+++ b/libavfilter/avfilter.c
@@ -185,7 +185,7 @@ int avfilter_link(AVFilterContext *src, unsigned srcpad,
link->srcpad = &src->output_pads[srcpad];
link->dstpad = &dst->input_pads[dstpad];
link->type = src->output_pads[srcpad].type;
- link->graph = src->graph;
+ li->l.graph = src->graph;
av_assert0(AV_PIX_FMT_NONE == -1 && AV_SAMPLE_FMT_NONE == -1);
link->format = -1;
link->colorspace = AVCOL_SPC_UNSPECIFIED;
@@ -231,8 +231,8 @@ static void update_link_current_pts(FilterLinkInternal *li, int64_t pts)
li->l.current_pts = pts;
li->l.current_pts_us = av_rescale_q(pts, link->time_base, AV_TIME_BASE_Q);
/* TODO use duration */
- if (link->graph && li->age_index >= 0)
- ff_avfilter_graph_update_heap(link->graph, li);
+ if (li->l.graph && li->age_index >= 0)
+ ff_avfilter_graph_update_heap(li->l.graph, li);
}
void ff_filter_set_ready(AVFilterContext *filter, unsigned priority)
diff --git a/libavfilter/avfilter.h b/libavfilter/avfilter.h
index a91b543f5e..549fe6ce3a 100644
--- a/libavfilter/avfilter.h
+++ b/libavfilter/avfilter.h
@@ -594,11 +594,6 @@ struct AVFilterLink {
* Lists of supported formats / etc. supported by the output filter.
*/
AVFilterFormatsConfig outcfg;
-
- /**
- * Graph the filter belongs to.
- */
- struct AVFilterGraph *graph;
};
/**
diff --git a/libavfilter/avfiltergraph.c b/libavfilter/avfiltergraph.c
index 2d46dd7637..6bfcc42430 100644
--- a/libavfilter/avfiltergraph.c
+++ b/libavfilter/avfiltergraph.c
@@ -106,7 +106,7 @@ void ff_filter_graph_remove_filter(AVFilterGraph *graph, AVFilterContext *filter
filter->graph = NULL;
for (j = 0; j<filter->nb_outputs; j++)
if (filter->outputs[j])
- filter->outputs[j]->graph = NULL;
+ ff_filter_link(filter->outputs[j])->graph = NULL;
return;
}
diff --git a/libavfilter/f_sendcmd.c b/libavfilter/f_sendcmd.c
index 86f9d522e9..8ba0878e81 100644
--- a/libavfilter/f_sendcmd.c
+++ b/libavfilter/f_sendcmd.c
@@ -567,7 +567,7 @@ FF_ENABLE_DEPRECATION_WARNINGS
av_log(ctx, AV_LOG_VERBOSE,
"Processing command #%d target:%s command:%s arg:%s\n",
cmd->index, cmd->target, cmd->command, cmd_arg);
- ret = avfilter_graph_send_command(inlink->graph,
+ ret = avfilter_graph_send_command(inl->graph,
cmd->target, cmd->command, cmd_arg,
buf, sizeof(buf),
AVFILTER_CMD_FLAG_ONE);
diff --git a/libavfilter/filters.h b/libavfilter/filters.h
index 36164c171e..ab16047e12 100644
--- a/libavfilter/filters.h
+++ b/libavfilter/filters.h
@@ -42,6 +42,11 @@
typedef struct FilterLink {
AVFilterLink pub;
+ /**
+ * Graph the filter belongs to.
+ */
+ struct AVFilterGraph *graph;
+
/**
* Current timestamp of the link, as defined by the most recent
* frame(s), in link time_base units.
--
2.43.0
More information about the ffmpeg-devel
mailing list