1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2025-12-15 06:06:18 +02:00

lavfi/avfilter: move AVFilterContext.ready to FFFilterContext

This field is private to the generic filtering code.
This commit is contained in:
Anton Khirnov
2024-10-03 19:15:58 +02:00
parent e0eec71a13
commit b1247e7c1f
5 changed files with 29 additions and 13 deletions

View File

@@ -237,7 +237,8 @@ static void update_link_current_pts(FilterLinkInternal *li, int64_t pts)
void ff_filter_set_ready(AVFilterContext *filter, unsigned priority)
{
filter->ready = FFMAX(filter->ready, priority);
FFFilterContext *ctxi = fffilterctx(filter);
ctxi->ready = FFMAX(ctxi->ready, priority);
}
/**
@@ -473,6 +474,7 @@ void ff_tlog_link(void *ctx, AVFilterLink *link, int end)
int ff_request_frame(AVFilterLink *link)
{
FilterLinkInternal * const li = ff_link_internal(link);
FFFilterContext * const ctxi_dst = fffilterctx(link->dst);
FF_TPRINTF_START(NULL, request_frame); ff_tlog_link(NULL, link, 1);
@@ -482,7 +484,7 @@ int ff_request_frame(AVFilterLink *link)
if (li->status_in) {
if (ff_framequeue_queued_frames(&li->fifo)) {
av_assert1(!li->frame_wanted_out);
av_assert1(link->dst->ready >= 300);
av_assert1(ctxi_dst->ready >= 300);
return 0;
} else {
/* Acknowledge status change. Filters using ff_request_frame() will
@@ -1384,12 +1386,13 @@ static int ff_filter_activate_default(AVFilterContext *filter)
int ff_filter_activate(AVFilterContext *filter)
{
FFFilterContext *ctxi = fffilterctx(filter);
int ret;
/* Generic timeline support is not yet implemented but should be easy */
av_assert1(!(filter->filter->flags & AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC &&
filter->filter->activate));
filter->ready = 0;
ctxi->ready = 0;
ret = filter->filter->activate ? filter->filter->activate(filter) :
ff_filter_activate_default(filter);
if (ret == FFERROR_NOT_READY)