OSDN Git Service

avfilter/vf_showinfo: show timebase & framerate too
authorMichael Niedermayer <michaelni@gmx.at>
Sat, 17 Jan 2015 14:16:42 +0000 (15:16 +0100)
committerMichael Niedermayer <michaelni@gmx.at>
Wed, 21 Jan 2015 20:21:00 +0000 (21:21 +0100)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavfilter/vf_showinfo.c

index aa3bc83..78ba4a0 100644 (file)
@@ -162,11 +162,36 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *frame)
     return ff_filter_frame(inlink->dst->outputs[0], frame);
 }
 
+static int config_props(AVFilterContext *ctx, AVFilterLink *link, int is_out)
+{
+
+    av_log(ctx, AV_LOG_INFO, "config %s time_base: %d/%d, frame_rate: %d/%d\n",
+           is_out ? "out" :"in",
+           link->time_base.num, link->time_base.den,
+           link->frame_rate.num, link->frame_rate.den
+    );
+
+    return 0;
+}
+
+static int config_props_in(AVFilterLink *link)
+{
+    AVFilterContext *ctx = link->dst;
+    return config_props(ctx, link, 0);
+}
+
+static int config_props_out(AVFilterLink *link)
+{
+    AVFilterContext *ctx = link->src;
+    return config_props(ctx, link, 1);
+}
+
 static const AVFilterPad avfilter_vf_showinfo_inputs[] = {
     {
         .name         = "default",
         .type         = AVMEDIA_TYPE_VIDEO,
         .filter_frame = filter_frame,
+        .config_props  = config_props_in,
     },
     { NULL }
 };
@@ -174,7 +199,8 @@ static const AVFilterPad avfilter_vf_showinfo_inputs[] = {
 static const AVFilterPad avfilter_vf_showinfo_outputs[] = {
     {
         .name = "default",
-        .type = AVMEDIA_TYPE_VIDEO
+        .type = AVMEDIA_TYPE_VIDEO,
+        .config_props  = config_props_out,
     },
     { NULL }
 };