History

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. (cherry picked from commit a89f4ca005efa5ee82089583c7b8bc00bcee816a)

David Conrad committed 15 years ago

Commit 0cfcbf21 parent 695f39c1 file · +1 −2Browse files

Unified · Split

libavcodec/vp3.c+1−2
@@ -1459,8 +1459,7 @@ static void render_slice(Vp3DecodeContext *s, int slice) · 1458 unmodified lines
14591459
14601460 if(src_x<0 || src_y<0 || src_x + 9 >= plane_width || src_y + 9 >= plane_height){
14611461 uint8_t *temp= s->edge_emu_buffer;
1462− if(stride<0) temp -= 9*stride;
1463− else temp += 9*stride;
1462+ if(stride<0) temp -= 8*stride;
14641463
14651464 s->dsp.emulated_edge_mc(temp, motion_source, stride, 9, 9, src_x, src_y, plane_width, plane_height);
14661465 motion_source= temp;

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t