Mercurial > mplayer.hg
comparison postproc/swscale.c @ 10952:b1c40065bcff
srcSliceY % 4 != 0 fix
author | michael |
---|---|
date | Fri, 26 Sep 2003 23:37:28 +0000 |
parents | b71452194fff |
children | 6e35326c742f |
comparison
equal
deleted
inserted
replaced
10951:fa75c0b623fe | 10952:b1c40065bcff |
---|---|
1926 for(i=0; i<dstH; i++) | 1926 for(i=0; i<dstH; i++) |
1927 { | 1927 { |
1928 int chrI= i*c->chrDstH / dstH; | 1928 int chrI= i*c->chrDstH / dstH; |
1929 int nextSlice= MAX(c->vLumFilterPos[i ] + c->vLumFilterSize - 1, | 1929 int nextSlice= MAX(c->vLumFilterPos[i ] + c->vLumFilterSize - 1, |
1930 ((c->vChrFilterPos[chrI] + c->vChrFilterSize - 1)<<c->chrSrcVSubSample)); | 1930 ((c->vChrFilterPos[chrI] + c->vChrFilterSize - 1)<<c->chrSrcVSubSample)); |
1931 nextSlice&= ~3; // Slices start at boundaries which are divisable through 4 | 1931 if(c->chrSrcVSubSample > 1) |
1932 nextSlice&= ~3; // Slices start at boundaries which are divisable through 4 | |
1933 else | |
1934 nextSlice&= ~1; // Slices start at boundaries which are divisable through 2 | |
1932 if(c->vLumFilterPos[i ] + c->vLumBufSize < nextSlice) | 1935 if(c->vLumFilterPos[i ] + c->vLumBufSize < nextSlice) |
1933 c->vLumBufSize= nextSlice - c->vLumFilterPos[i ]; | 1936 c->vLumBufSize= nextSlice - c->vLumFilterPos[i ]; |
1934 if(c->vChrFilterPos[chrI] + c->vChrBufSize < (nextSlice>>c->chrSrcVSubSample)) | 1937 if(c->vChrFilterPos[chrI] + c->vChrBufSize < (nextSlice>>c->chrSrcVSubSample)) |
1935 c->vChrBufSize= (nextSlice>>c->chrSrcVSubSample) - c->vChrFilterPos[chrI]; | 1938 c->vChrBufSize= (nextSlice>>c->chrSrcVSubSample) - c->vChrFilterPos[chrI]; |
1936 } | 1939 } |