Mercurial > libavcodec.hg
diff mpegvideo.c @ 266:252444e5259b libavcodec
optimization
author | michaelni |
---|---|
date | Fri, 15 Mar 2002 14:57:17 +0000 |
parents | 4e9e728021d8 |
children | 09ae29b27ed9 |
line wrap: on
line diff
--- a/mpegvideo.c Fri Mar 15 04:10:53 2002 +0000 +++ b/mpegvideo.c Fri Mar 15 14:57:17 2002 +0000 @@ -1123,6 +1123,12 @@ s->avg_mb_var = s->avg_mb_var / s->mb_num; + s->block_wrap[0]= + s->block_wrap[1]= + s->block_wrap[2]= + s->block_wrap[3]= s->mb_width*2 + 2; + s->block_wrap[4]= + s->block_wrap[5]= s->mb_width + 2; for(mb_y=0; mb_y < s->mb_height; mb_y++) { /* Put GOB header based on RTP MTU */ /* TODO: Put all this stuff in a separate generic function */ @@ -1138,10 +1144,22 @@ } } + s->block_index[0]= s->block_wrap[0]*(mb_y*2 + 1) - 1; + s->block_index[1]= s->block_wrap[0]*(mb_y*2 + 1); + s->block_index[2]= s->block_wrap[0]*(mb_y*2 + 2) - 1; + s->block_index[3]= s->block_wrap[0]*(mb_y*2 + 2); + s->block_index[4]= s->block_wrap[4]*(mb_y + 1) + s->block_wrap[0]*(s->mb_height*2 + 2); + s->block_index[5]= s->block_wrap[4]*(mb_y + 1 + s->mb_height + 2) + s->block_wrap[0]*(s->mb_height*2 + 2); for(mb_x=0; mb_x < s->mb_width; mb_x++) { s->mb_x = mb_x; s->mb_y = mb_y; + s->block_index[0]+=2; + s->block_index[1]+=2; + s->block_index[2]+=2; + s->block_index[3]+=2; + s->block_index[4]++; + s->block_index[5]++; #if 0 /* compute motion vector and macro block type (intra or non intra) */ motion_x = 0;