Browse Source

swscale: fix ticket #4877

(cherry picked from commit a8602dde5e)

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
tags/n2.8.1
Pedro Arthur Michael Niedermayer 10 years ago
parent
commit
01bf0a178d
1 changed files with 12 additions and 11 deletions
  1. +12
    -11
      libswscale/swscale.c

+ 12
- 11
libswscale/swscale.c View File

@@ -476,17 +476,18 @@ static int swscale(SwsContext *c, const uint8_t *src[],
ff_init_slice_from_src(vout_slice, (uint8_t**)dst, dstStride, c->dstW, ff_init_slice_from_src(vout_slice, (uint8_t**)dst, dstStride, c->dstW,
dstY, dstH, dstY >> c->chrDstVSubSample, dstY, dstH, dstY >> c->chrDstVSubSample,
FF_CEIL_RSHIFT(dstH, c->chrDstVSubSample)); FF_CEIL_RSHIFT(dstH, c->chrDstVSubSample));

hout_slice->plane[0].sliceY = lastInLumBuf + 1;
hout_slice->plane[1].sliceY = lastInChrBuf + 1;
hout_slice->plane[2].sliceY = lastInChrBuf + 1;
hout_slice->plane[3].sliceY = lastInLumBuf + 1;

hout_slice->plane[0].sliceH =
hout_slice->plane[1].sliceH =
hout_slice->plane[2].sliceH =
hout_slice->plane[3].sliceH = 0;
hout_slice->width = dstW;
if (srcSliceY == 0) {
hout_slice->plane[0].sliceY = lastInLumBuf + 1;
hout_slice->plane[1].sliceY = lastInChrBuf + 1;
hout_slice->plane[2].sliceY = lastInChrBuf + 1;
hout_slice->plane[3].sliceY = lastInLumBuf + 1;

hout_slice->plane[0].sliceH =
hout_slice->plane[1].sliceH =
hout_slice->plane[2].sliceH =
hout_slice->plane[3].sliceH = 0;
hout_slice->width = dstW;
}
#endif #endif


for (; dstY < dstH; dstY++) { for (; dstY < dstH; dstY++) {


Loading…
Cancel
Save