comparison h263.c @ 599:b1a191202f96 libavcodec

mpeg4 mpeg quantizer encoding
author michaelni
date Tue, 06 Aug 2002 23:51:15 +0000
parents 0c950f816d61
children df2102629fef
comparison
equal deleted inserted replaced
598:0c950f816d61 599:b1a191202f96
1120 s->max_qcoeff= 127; 1120 s->max_qcoeff= 127;
1121 s->y_dc_scale_table= 1121 s->y_dc_scale_table=
1122 s->c_dc_scale_table= ff_mpeg1_dc_scale_table; 1122 s->c_dc_scale_table= ff_mpeg1_dc_scale_table;
1123 } 1123 }
1124 1124
1125 /* h263 type bias */ 1125 if(s->mpeg_quant){
1126 //FIXME mpeg4 mpeg quantizer 1126 s->intra_quant_bias= 3<<(QUANT_BIAS_SHIFT-3); //(a + x*3/8)/x
1127 s->intra_quant_bias=0; 1127 s->inter_quant_bias= 0;
1128 s->inter_quant_bias=-(1<<(QUANT_BIAS_SHIFT-2)); //(a - x/4)/x 1128 }else{
1129 s->intra_quant_bias=0;
1130 s->inter_quant_bias=-(1<<(QUANT_BIAS_SHIFT-2)); //(a - x/4)/x
1131 }
1129 } 1132 }
1130 1133
1131 static void h263_encode_block(MpegEncContext * s, DCTELEM * block, int n) 1134 static void h263_encode_block(MpegEncContext * s, DCTELEM * block, int n)
1132 { 1135 {
1133 int level, run, last, i, j, last_index, last_non_zero, sign, slevel, code; 1136 int level, run, last, i, j, last_index, last_non_zero, sign, slevel, code;
1272 put_bits(&s->pb, 1, s->vol_sprite_usage=0); /* sprite enable */ 1275 put_bits(&s->pb, 1, s->vol_sprite_usage=0); /* sprite enable */
1273 }else{ /* vo_ver_id == 2 */ 1276 }else{ /* vo_ver_id == 2 */
1274 put_bits(&s->pb, 2, s->vol_sprite_usage=0); /* sprite enable */ 1277 put_bits(&s->pb, 2, s->vol_sprite_usage=0); /* sprite enable */
1275 } 1278 }
1276 put_bits(&s->pb, 1, 0); /* not 8 bit */ 1279 put_bits(&s->pb, 1, 0); /* not 8 bit */
1277 put_bits(&s->pb, 1, 0); /* quant type= h263 style*/ 1280 put_bits(&s->pb, 1, s->mpeg_quant); /* quant type= (0=h263 style)*/
1281 if(s->mpeg_quant) put_bits(&s->pb, 2, 0); /* no custom matrixes */
1282
1278 if (vo_ver_id != 1) 1283 if (vo_ver_id != 1)
1279 put_bits(&s->pb, 1, s->quarter_sample=0); 1284 put_bits(&s->pb, 1, s->quarter_sample=0);
1280 put_bits(&s->pb, 1, 1); /* complexity estimation disable */ 1285 put_bits(&s->pb, 1, 1); /* complexity estimation disable */
1281 s->resync_marker= s->rtp_mode; 1286 s->resync_marker= s->rtp_mode;
1282 put_bits(&s->pb, 1, s->resync_marker ? 0 : 1);/* resync marker disable */ 1287 put_bits(&s->pb, 1, s->resync_marker ? 0 : 1);/* resync marker disable */