On Thu, Jun 09, 2016 at 01:24:57PM +0000, Davinder Singh wrote: > On Mon, May 30, 2016 at 1:45 PM Michael Niedermayer <mich...@niedermayer.cc> > wrote: > > > On Mon, May 23, 2016 at 05:09:35PM +0000, Davinder Singh wrote: > > > vf_codecview.c | 55 > > +++++++++++++++++++++++++++++++++++++++++++++---------- > > > 1 file changed, 45 insertions(+), 10 deletions(-) > > > 464b23c4638d1a408e8237651facf327994945bf > > 0001-vf_codecview-added-new-options.patch > > > From 641d6f92e792ea7def3610f5462b6bbec019c4b7 Mon Sep 17 00:00:00 2001 > > > From: dsmudhar <ds.mud...@gmail.com> > > > Date: Mon, 23 May 2016 22:29:51 +0530 > > > Subject: [PATCH] vf_codecview: added new options > > > > > > --- > > > libavfilter/vf_codecview.c | 55 > > +++++++++++++++++++++++++++++++++++++--------- > > > 1 file changed, 45 insertions(+), 10 deletions(-) > > > > > > diff --git a/libavfilter/vf_codecview.c b/libavfilter/vf_codecview.c > > > index e70b397..1cb521d 100644 > > > --- a/libavfilter/vf_codecview.c > > > +++ b/libavfilter/vf_codecview.c > > > @@ -38,21 +38,39 @@ > > > #define MV_P_FOR (1<<0) > > > #define MV_B_FOR (1<<1) > > > #define MV_B_BACK (1<<2) > > > +#define MV_TYPE_FOR (1<<0) > > > +#define MV_TYPE_BACK (1<<1) > > > +#define FRAME_TYPE_I (1<<0) > > > +#define FRAME_TYPE_P (1<<1) > > > +#define FRAME_TYPE_B (1<<2) > > > > > > typedef struct { > > > const AVClass *class; > > > unsigned mv; > > > + unsigned frame_type; > > > + unsigned mv_type; > > > int hsub, vsub; > > > int qp; > > > } CodecViewContext; > > > > > > #define OFFSET(x) offsetof(CodecViewContext, x) > > > #define FLAGS AV_OPT_FLAG_FILTERING_PARAM|AV_OPT_FLAG_VIDEO_PARAM > > > +#define CONST(name, help, val, unit) { name, help, 0, > > AV_OPT_TYPE_CONST, {.i64=val}, 0, 0, FLAGS, unit } > > > + > > > static const AVOption codecview_options[] = { > > > { "mv", "set motion vectors to visualize", OFFSET(mv), > > AV_OPT_TYPE_FLAGS, {.i64=0}, 0, INT_MAX, FLAGS, "mv" }, > > > - {"pf", "forward predicted MVs of P-frames", 0, > > AV_OPT_TYPE_CONST, {.i64 = MV_P_FOR }, INT_MIN, INT_MAX, FLAGS, "mv"}, > > > - {"bf", "forward predicted MVs of B-frames", 0, > > AV_OPT_TYPE_CONST, {.i64 = MV_B_FOR }, INT_MIN, INT_MAX, FLAGS, "mv"}, > > > - {"bb", "backward predicted MVs of B-frames", 0, > > AV_OPT_TYPE_CONST, {.i64 = MV_B_BACK }, INT_MIN, INT_MAX, FLAGS, "mv"}, > > > + CONST("pf", "forward predicted MVs of P-frames", MV_P_FOR, > > "mv"), > > > + CONST("bf", "forward predicted MVs of B-frames", MV_B_FOR, > > "mv"), > > > + CONST("bb", "backward predicted MVs of B-frames", MV_B_BACK, > > "mv"), > > > + { "mv_type", "set motion vectors type", OFFSET(mv_type), > > AV_OPT_TYPE_FLAGS, {.i64=0}, 0, INT_MAX, FLAGS, "mv_type" }, > > > + { "mvt", "set motion vectors type", OFFSET(mv_type), > > AV_OPT_TYPE_FLAGS, {.i64=0}, 0, INT_MAX, FLAGS, "mv_type" }, > > > + CONST("fp", "forward predicted MVs", MV_TYPE_FOR, "mv_type"), > > > + CONST("bp", "backward predicted MVs", MV_TYPE_BACK, "mv_type"), > > > + { "frame_type", "set frame types to visualize motion vectors of", > > OFFSET(frame_type), AV_OPT_TYPE_FLAGS, {.i64=0}, 0, INT_MAX, FLAGS, > > "frame_type" }, > > > + { "ft", "set frame types to visualize motion vectors of", > > OFFSET(frame_type), AV_OPT_TYPE_FLAGS, {.i64=0}, 0, INT_MAX, FLAGS, > > "frame_type" }, > > > + CONST("if", "I-frames", FRAME_TYPE_I, "frame_type"), > > > + CONST("pf", "P-frames", FRAME_TYPE_P, "frame_type"), > > > + CONST("bf", "B-frames", FRAME_TYPE_B, "frame_type"), > > > { "qp", NULL, OFFSET(qp), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1, .flags > > = FLAGS }, > > > > the new options should be added at the end, inserting them in the middle > > breaks for example > > -flags2 +export_mvs -vf codecview=0:1 > > > > [...] > > > > -- > > Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB > > > > Good people do not need laws to tell them to act responsibly, while bad > > people will find a way around the laws. -- Plato > > _______________________________________________ > > ffmpeg-devel mailing list > > ffmpeg-devel@ffmpeg.org > > http://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > > patch attached.
> doc/filters.texi | 38 ++++++++++++++++++++++++++++--- > libavfilter/vf_codecview.c | 55 > ++++++++++++++++++++++++++++++++++++--------- > 2 files changed, 80 insertions(+), 13 deletions(-) > 88778603071af6afe4dd2d0ab37a0802449e792c > 0001-vf_codecview-added-new-options.patch > From 44016bf074281bf96ee40567b5aaf6a7d4d9f063 Mon Sep 17 00:00:00 2001 > From: dsmudhar <ds.mud...@gmail.com> > Date: Thu, 9 Jun 2016 18:42:33 +0530 > Subject: [PATCH] vf_codecview: added new options applied thanks [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Frequently ignored answer#1 FFmpeg bugs should be sent to our bugtracker. User questions about the command line tools should be sent to the ffmpeg-user ML. And questions about how to use libav* should be sent to the libav-user ML.
signature.asc
Description: Digital signature
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel