vf_lut: fix handling of odd dimensions

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
pull/59/head
Michael Niedermayer 13 years ago
parent 827667eca7
commit a46f8915be
  1. 4
      libavfilter/vf_lut.c

@ -327,9 +327,9 @@ static void draw_slice(AVFilterLink *inlink, int y, int h, int slice_dir)
inrow = inpic ->data[plane] + (y>>vsub) * inpic ->linesize[plane];
outrow = outpic->data[plane] + (y>>vsub) * outpic->linesize[plane];
for (i = 0; i < h>>vsub; i ++) {
for (i = 0; i < (h + (1<<vsub) - 1)>>vsub; i ++) {
const uint8_t *tab = lut->lut[plane];
int w = inlink->w>>hsub;
int w = (inlink->w + (1<<hsub) - 1)>>hsub;
for (j = 0; j < w; j++)
outrow[j] = tab[inrow[j]];
inrow += inpic ->linesize[plane];

Loading…
Cancel
Save