[FFmpeg-devel] [PATCH 1/2] avfilter: vf_minterpolate: rename chroma log vars
Paul B Mahol
onemda at gmail.com
Sun Aug 28 23:51:05 EEST 2016
On Sun, Aug 28, 2016 at 10:47 PM, Michael Niedermayer <
michael at niedermayer.cc> wrote:
> On Sun, Aug 28, 2016 at 06:24:14PM +0000, Davinder Singh wrote:
> > hi,
> >
> > this rename confusing chroma variables to one used in AVPixFmtDescriptor.
> > more consistent.
> > also removed some useless vars from context.
> >
> > thanks
> > DSM_
>
> [...]
>
> > @@ -900,6 +894,8 @@ static void bidirectional_obmc(MIContext *mi_ctx,
> int alpha)
> > }
> > }
> >
> > +
> > +
> > static void set_frame_data(MIContext *mi_ctx, int alpha, AVFrame
> *avf_out)
> > {
> > int x, y, plane;
>
> stray change
>
>
> > @@ -936,8 +932,8 @@ static void set_frame_data(MIContext *mi_ctx, int
> alpha, AVFrame *avf_out)
> > for (i = 0; i < pixel->nb; i++) {
> > Frame *frame = &mi_ctx->frames[pixel->refs[i]];
> > if (chroma) {
> > - x_mv = (x >> mi_ctx->chroma_h_shift) +
> (pixel->mvs[i][0] >> mi_ctx->chroma_h_shift);
> > - y_mv = (y >> mi_ctx->chroma_v_shift) +
> (pixel->mvs[i][1] >> mi_ctx->chroma_v_shift);
> > + x_mv = (x >> mi_ctx->log2_chroma_w) +
> (pixel->mvs[i][0] >> mi_ctx->log2_chroma_w);
> > + y_mv = (y >> mi_ctx->log2_chroma_h) +
> (pixel->mvs[i][1] >> mi_ctx->log2_chroma_h);
> > } else {
> > x_mv = x + pixel->mvs[i][0];
> > y_mv = y + pixel->mvs[i][1];
> > @@ -949,7 +945,7 @@ static void set_frame_data(MIContext *mi_ctx, int
> alpha, AVFrame *avf_out)
> > val = ROUNDED_DIV(val, weight_sum);
> >
> > if (chroma)
> > - avf_out->data[plane][(x >> mi_ctx->chroma_h_shift)
> + (y >> mi_ctx->chroma_v_shift) * avf_out->linesize[plane]] = val;
> > + avf_out->data[plane][(x >> mi_ctx->log2_chroma_w) +
> (y >> mi_ctx->log2_chroma_h) * avf_out->linesize[plane]] = val;
> > else
> > avf_out->data[plane][x + y *
> avf_out->linesize[plane]] = val;
> > }
> > @@ -1092,8 +1088,8 @@ static void interpolate(AVFilterLink *inlink,
> AVFrame *avf_out)
> > int height = avf_out->height;
> >
> > if (plane == 1 || plane == 2) {
> > - width = mi_ctx->chroma_width;
> > - height = mi_ctx->chroma_height;
> > + width = width >> mi_ctx->log2_chroma_w;
> > + height = height >> mi_ctx->log2_chroma_h;
>
> this is rounded differntly if wdith / height is odd,
> is that intended ?
>
It should use AV_CEIL_RSHIFT
More information about the ffmpeg-devel
mailing list