comparison snow.c @ 3189:e1cbe2635325 libavcodec

fix %8 != 0 w/h
author michael
date Sat, 11 Mar 2006 00:18:43 +0000
parents 961af1358c7f
children e9fa3ac61966
comparison
equal deleted inserted replaced
3188:04636faaa720 3189:e1cbe2635325
2518 if( (unsigned)sx >= w - b_w - 4 2518 if( (unsigned)sx >= w - b_w - 4
2519 || (unsigned)sy >= h - b_h - 4){ 2519 || (unsigned)sy >= h - b_h - 4){
2520 ff_emulated_edge_mc(tmp + MB_SIZE, src, stride, b_w+5, b_h+5, sx, sy, w, h); 2520 ff_emulated_edge_mc(tmp + MB_SIZE, src, stride, b_w+5, b_h+5, sx, sy, w, h);
2521 src= tmp + MB_SIZE; 2521 src= tmp + MB_SIZE;
2522 } 2522 }
2523 assert(b_w == b_h || 2*b_w == b_h || b_w == 2*b_h); 2523 // assert(b_w == b_h || 2*b_w == b_h || b_w == 2*b_h);
2524 assert(!(b_w&(b_w-1))); 2524 // assert(!(b_w&(b_w-1)));
2525 assert(b_w>1 && b_h>1); 2525 assert(b_w>1 && b_h>1);
2526 assert(tab_index>=0 && tab_index<4 || b_w==32); 2526 assert(tab_index>=0 && tab_index<4 || b_w==32);
2527 if((dx&3) || (dy&3)) 2527 if((dx&3) || (dy&3) || !(b_w == b_h || 2*b_w == b_h || b_w == 2*b_h) || (b_w&(b_w-1)))
2528 mc_block(dst, src, tmp, stride, b_w, b_h, dx, dy); 2528 mc_block(dst, src, tmp, stride, b_w, b_h, dx, dy);
2529 else if(b_w==32){ 2529 else if(b_w==32){
2530 int y; 2530 int y;
2531 for(y=0; y<b_h; y+=16){ 2531 for(y=0; y<b_h; y+=16){
2532 s->dsp.put_h264_qpel_pixels_tab[0][dy+(dx>>2)](dst + y*stride, src + 2 + (y+2)*stride,stride); 2532 s->dsp.put_h264_qpel_pixels_tab[0][dy+(dx>>2)](dst + y*stride, src + 2 + (y+2)*stride,stride);