Hi, On Tue, Oct 9, 2012 at 1:38 PM, Mashiat Sarker Shakkhar <mashiat.sar...@gmail.com> wrote: > This is required due to the way VC-1 handles chroma pull-back which may end > up causing negative chroma MV for zero luma MV. Edge emulation needs to be > invoked in such cases. > > This problem only affects chroma Y motion vector. > --- > libavcodec/vc1dec.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/libavcodec/vc1dec.c b/libavcodec/vc1dec.c > index 42eb4a5..2683c86 100644 > --- a/libavcodec/vc1dec.c > +++ b/libavcodec/vc1dec.c > @@ -430,7 +430,7 @@ static void vc1_mc_1mv(VC1Context *v, int dir) > if (v->rangeredfrm || (v->mv_mode == MV_PMODE_INTENSITY_COMP) > || s->h_edge_pos < 22 || v_edge_pos < 22 > || (unsigned)(src_x - s->mspel) > s->h_edge_pos - (mx&3) - 16 - > s->mspel * 3 > - || (unsigned)(src_y - s->mspel) > v_edge_pos - (my&3) - 16 - > s->mspel * 3) { > + || (unsigned)(src_y - 1) > v_edge_pos - (my&3) - 16 - 3) {
I'm slightly curious why this is only the case for the vertical dimension, but not the horizontal. Is that intentional, or an oversight? Ronald _______________________________________________ libav-devel mailing list libav-devel@libav.org https://lists.libav.org/mailman/listinfo/libav-devel