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 /libavcodec/vp3.c | |
parent | 9707f84fa73c23352937fc7e4e0a85eaf3135cbc (diff) | |
download | ffmpeg-streaming-a89f4ca005efa5ee82089583c7b8bc00bcee816a.zip ffmpeg-streaming-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.
Diffstat (limited to 'libavcodec/vp3.c')
-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 97051f7..3d4bfb4 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; |