From 39dc1bc90fa79ede19f5688a84d938f869924e51 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20B=C5=93sch?= Date: Tue, 21 May 2013 22:27:07 +0200 Subject: [PATCH] lavfi/(a)showinfo: use link frame counter instead of local counter. --- libavfilter/af_ashowinfo.c | 10 ++-------- libavfilter/vf_showinfo.c | 12 ++---------- 2 files changed, 4 insertions(+), 18 deletions(-) diff --git a/libavfilter/af_ashowinfo.c b/libavfilter/af_ashowinfo.c index 7770c276c9..75aed80a17 100644 --- a/libavfilter/af_ashowinfo.c +++ b/libavfilter/af_ashowinfo.c @@ -43,11 +43,6 @@ typedef struct AShowInfoContext { * Scratch space for individual plane checksums for planar audio */ uint32_t *plane_checksums; - - /** - * Frame counter - */ - uint64_t frame; } AShowInfoContext; static av_cold void uninit(AVFilterContext *ctx) @@ -86,10 +81,10 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *buf) buf->channel_layout); av_log(ctx, AV_LOG_INFO, - "n:%"PRIu64" pts:%s pts_time:%s pos:%"PRId64" " + "n:%"PRId64" pts:%s pts_time:%s pos:%"PRId64" " "fmt:%s channels:%d chlayout:%s rate:%d nb_samples:%d " "checksum:%08X ", - s->frame, + inlink->frame_count, av_ts2str(buf->pts), av_ts2timestr(buf->pts, &inlink->time_base), av_frame_get_pkt_pos(buf), av_get_sample_fmt_name(buf->format), av_frame_get_channels(buf), chlayout_str, @@ -101,7 +96,6 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *buf) av_log(ctx, AV_LOG_INFO, "%08X ", s->plane_checksums[i]); av_log(ctx, AV_LOG_INFO, "]\n"); - s->frame++; return ff_filter_frame(inlink->dst->outputs[0], buf); } diff --git a/libavfilter/vf_showinfo.c b/libavfilter/vf_showinfo.c index 9acadcf2f0..336a870b17 100644 --- a/libavfilter/vf_showinfo.c +++ b/libavfilter/vf_showinfo.c @@ -31,14 +31,9 @@ #include "internal.h" #include "video.h" -typedef struct { - unsigned int frame; -} ShowInfoContext; - static int filter_frame(AVFilterLink *inlink, AVFrame *frame) { AVFilterContext *ctx = inlink->dst; - ShowInfoContext *showinfo = ctx->priv; const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(inlink->format); uint32_t plane_checksum[4] = {0}, checksum = 0; int i, plane, vsub = desc->log2_chroma_h; @@ -59,10 +54,10 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *frame) } av_log(ctx, AV_LOG_INFO, - "n:%d pts:%s pts_time:%s pos:%"PRId64" " + "n:%"PRId64" pts:%s pts_time:%s pos:%"PRId64" " "fmt:%s sar:%d/%d s:%dx%d i:%c iskey:%d type:%c " "checksum:%08X plane_checksum:[%08X", - showinfo->frame, + inlink->frame_count, av_ts2str(frame->pts), av_ts2timestr(frame->pts, &inlink->time_base), av_frame_get_pkt_pos(frame), desc->name, frame->sample_aspect_ratio.num, frame->sample_aspect_ratio.den, @@ -77,7 +72,6 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *frame) av_log(ctx, AV_LOG_INFO, " %08X", plane_checksum[plane]); av_log(ctx, AV_LOG_INFO, "]\n"); - showinfo->frame++; return ff_filter_frame(inlink->dst->outputs[0], frame); } @@ -103,8 +97,6 @@ AVFilter avfilter_vf_showinfo = { .name = "showinfo", .description = NULL_IF_CONFIG_SMALL("Show textual information for each video frame."), - .priv_size = sizeof(ShowInfoContext), - .inputs = avfilter_vf_showinfo_inputs, .outputs = avfilter_vf_showinfo_outputs,