Mercurial > libavcodec.hg
comparison rv10.c @ 1796:7186712b391e libavcodec
rv10/obmc fixes
author | michael |
---|---|
date | Mon, 09 Feb 2004 15:23:35 +0000 |
parents | bdf3927bf8c5 |
children | a660ef952580 |
comparison
equal
deleted
inserted
replaced
1795:920e6381e1fe | 1796:7186712b391e |
---|---|
447 case 0x10000000: | 447 case 0x10000000: |
448 s->rv10_version= 0; | 448 s->rv10_version= 0; |
449 s->h263_long_vectors=0; | 449 s->h263_long_vectors=0; |
450 s->low_delay=1; | 450 s->low_delay=1; |
451 break; | 451 break; |
452 case 0x10002000: | |
453 s->rv10_version= 3; | |
454 s->h263_long_vectors=1; | |
455 s->low_delay=1; | |
456 s->obmc=1; | |
457 break; | |
452 case 0x10003000: | 458 case 0x10003000: |
453 s->rv10_version= 3; | 459 s->rv10_version= 3; |
454 s->h263_long_vectors=1; | 460 s->h263_long_vectors=1; |
455 s->low_delay=1; | 461 s->low_delay=1; |
456 break; | 462 break; |
584 s->block_wrap[3]= s->mb_width*2 + 2; | 590 s->block_wrap[3]= s->mb_width*2 + 2; |
585 s->block_wrap[4]= | 591 s->block_wrap[4]= |
586 s->block_wrap[5]= s->mb_width + 2; | 592 s->block_wrap[5]= s->mb_width + 2; |
587 ff_init_block_index(s); | 593 ff_init_block_index(s); |
588 /* decode each macroblock */ | 594 /* decode each macroblock */ |
589 for(i=0;i<mb_count;i++) { | 595 |
596 for(s->mb_num_left= mb_count; s->mb_num_left>0; s->mb_num_left--) { | |
590 int ret; | 597 int ret; |
591 ff_update_block_index(s); | 598 ff_update_block_index(s); |
592 #ifdef DEBUG | 599 #ifdef DEBUG |
593 printf("**mb x=%d y=%d\n", s->mb_x, s->mb_y); | 600 printf("**mb x=%d y=%d\n", s->mb_x, s->mb_y); |
594 #endif | 601 #endif |
595 | 602 |
596 s->dsp.clear_blocks(s->block[0]); | 603 s->dsp.clear_blocks(s->block[0]); |
597 s->mv_dir = MV_DIR_FORWARD; | 604 s->mv_dir = MV_DIR_FORWARD; |
598 s->mv_type = MV_TYPE_16X16; | 605 s->mv_type = MV_TYPE_16X16; |
599 ret=ff_h263_decode_mb(s, s->block); | 606 ret=ff_h263_decode_mb(s, s->block); |
600 | 607 |