diff options
author | David Conrad <davedc@kozue.local> | 2011-02-19 01:41:51 -0800 |
---|---|---|
committer | Jason Garrett-Glaser <jason@x264.com> | 2011-02-19 01:42:12 -0800 |
commit | a89f4ca005efa5ee82089583c7b8bc00bcee816a (patch) | |
tree | 316a0192fa283621e8369eada072e9fbf362c4dc | |
parent | 9707f84fa73c23352937fc7e4e0a85eaf3135cbc (diff) | |
download | ffmpeg-a89f4ca005efa5ee82089583c7b8bc00bcee816a.tar.gz |
Fix VP3 edge emulation
With negative stride, the start of the edge_emu buffer should be pointing to
the last line, not the end of the buffer.
With positive stride, pointing to the end of the buffer was completely wrong.
-rw-r--r-- | libavcodec/vp3.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/libavcodec/vp3.c b/libavcodec/vp3.c index 97051f7065..3d4bfb4d91 100644 --- a/libavcodec/vp3.c +++ b/libavcodec/vp3.c @@ -1459,8 +1459,7 @@ static void render_slice(Vp3DecodeContext *s, int slice) if(src_x<0 || src_y<0 || src_x + 9 >= plane_width || src_y + 9 >= plane_height){ uint8_t *temp= s->edge_emu_buffer; - if(stride<0) temp -= 9*stride; - else temp += 9*stride; + if(stride<0) temp -= 8*stride; s->dsp.emulated_edge_mc(temp, motion_source, stride, 9, 9, src_x, src_y, plane_width, plane_height); motion_source= temp; |