I've been using this patch for the past week now and I believe it's good to go. Does someone want to take a second look before merging?
On Mon, Jun 5, 2017 at 6:55 AM, Kevin Mark <kmark...@gmail.com> wrote: > The scale2ref filter will now maintain the DAR of the main input and > not the DAR of the reference input. This previous behavior was deemed > counterintuitive for most (all?) use-cases. > > Before: > scale2ref=iw/4:ow/mdar > in w:320 h:240 fmt:rgb24 sar:1/1 > ref w:640 h:360 fmt:rgb24 sar:1/1 > out w:160 h:120 fmt:rgb24 sar:4/3 flags:0x2 > SAR: ((120 * 640) / (160 * 360)) * (1 / 1) = 4 / 3 > DAR: (160 / 120) * (4 / 3) = 16 / 9 > (main out now same DAR as ref) > > Now: > scale2ref=iw/4:ow/mdar > in w:320 h:240 fmt:rgb24 sar:1/1 > ref w:640 h:360 fmt:rgb24 sar:1/1 > out w:160 h:120 fmt:rgb24 sar:1/1 flags:0x2 > SAR: ((120 * 320) / (160 * 240)) * (1 / 1) = 1 / 1 > DAR: (160 / 120) * (1 / 1) = 4 / 3 > (main out same DAR as main in) > > The scale2ref FATE test has also been updated. > > Signed-off-by: Kevin Mark <kmark...@gmail.com> > --- > libavfilter/vf_scale.c | 6 +++--- > tests/ref/fate/filter-scale2ref_keep_aspect | 2 +- > 2 files changed, 4 insertions(+), 4 deletions(-) > > diff --git a/libavfilter/vf_scale.c b/libavfilter/vf_scale.c > index 9232bc4439..5e55f9344b 100644 > --- a/libavfilter/vf_scale.c > +++ b/libavfilter/vf_scale.c > @@ -337,10 +337,10 @@ static int config_props(AVFilterLink *outlink) > } > } > > - if (inlink->sample_aspect_ratio.num){ > - outlink->sample_aspect_ratio = av_mul_q((AVRational){outlink->h * > inlink->w, outlink->w * inlink->h}, inlink->sample_aspect_ratio); > + if (inlink0->sample_aspect_ratio.num){ > + outlink->sample_aspect_ratio = av_mul_q((AVRational){outlink->h * > inlink0->w, outlink->w * inlink0->h}, inlink0->sample_aspect_ratio); > } else > - outlink->sample_aspect_ratio = inlink->sample_aspect_ratio; > + outlink->sample_aspect_ratio = inlink0->sample_aspect_ratio; > > if (ctx->filter == &ff_vf_scale2ref) { > av_log(ctx, AV_LOG_VERBOSE, "in w:%d h:%d fmt:%s sar:%d/%d\n", > diff --git a/tests/ref/fate/filter-scale2ref_keep_aspect > b/tests/ref/fate/filter-scale2ref_keep_aspect > index ca03277446..8dd0dbb13b 100644 > --- a/tests/ref/fate/filter-scale2ref_keep_aspect > +++ b/tests/ref/fate/filter-scale2ref_keep_aspect > @@ -5,7 +5,7 @@ > #media_type 0: video > #codec_id 0: rawvideo > #dimensions 0: 160x120 > -#sar 0: 4/3 > +#sar 0: 1/1 > #stream#, dts, pts, duration, size, hash > 0, 0, 0, 1, 57600, > 9a19c23dc3a557786840d0098606d5f1 > 0, 1, 1, 1, 57600, > e6fbdabaf1bb0d28afc648ed4d27e9f0 > -- > 2.13.0 > _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel