Unified · Split
| @@ -709,9 +709,8 @@ void ff_h263_encode_motion(PutBitContext *pb, int val, int f_code) · 708 unmodified lines | |||
| 709 | int range, bit_size, sign, code, bits; | 709 | int range, bit_size, sign, code, bits; |
| 710 | 710 | ||
| 711 | if (val == 0) { | 711 | if (val == 0) { |
| 712 | /* zero vector */ | 712 | /* zero vector -- corresponds to ff_mvtab[0] */ |
| 713 | code = 0; | 713 | put_bits(pb, 1, 1); |
| 714 | put_bits(pb, ff_mvtab[code][1], ff_mvtab[code][0]); | ||
| 715 | } else { | 714 | } else { |
| 716 | bit_size = f_code - 1; | 715 | bit_size = f_code - 1; |
| 717 | range = 1 << bit_size; | 716 | range = 1 << bit_size; |
| @@ -741,7 +740,7 @@ static av_cold void init_mv_penalty_and_fcode(void) · 23 unmodified lines | |||
| 741 | for(mv=-MAX_DMV; mv<=MAX_DMV; mv++){ | 740 | for(mv=-MAX_DMV; mv<=MAX_DMV; mv++){ |
| 742 | int len; | 741 | int len; |
| 743 | 742 | ||
| 744 | if(mv==0) len= ff_mvtab[0][1]; | 743 | if (mv==0) len = 1; // ff_mvtab[0][1] |
| 745 | else{ | 744 | else{ |
| 746 | int val, bit_size, code; | 745 | int val, bit_size, code; |
| 747 | 746 | ||
| @@ -755,7 +754,7 @@ static av_cold void init_mv_penalty_and_fcode(void) · 7 unmodified lines | |||
| 755 | if(code<33){ | 754 | if(code<33){ |
| 756 | len= ff_mvtab[code][1] + 1 + bit_size; | 755 | len= ff_mvtab[code][1] + 1 + bit_size; |
| 757 | }else{ | 756 | }else{ |
| 758 | len= ff_mvtab[32][1] + av_log2(code>>5) + 2 + bit_size; | 757 | len = 12 /* ff_mvtab[32][1] */ + av_log2(code>>5) + 2 + bit_size; |
| 759 | } | 758 | } |
| 760 | } | 759 | } |
| 761 | 760 | ||