comparison h263.c @ 1483:8e7d8112de29 libavcodec

100l
author michaelni
date Sat, 27 Sep 2003 00:01:46 +0000
parents b372ecde32a8
children 0355f2b3519a
comparison
equal deleted inserted replaced
1482:b372ecde32a8 1483:8e7d8112de29
1581 s->luma_dc_vlc_length= uni_DCtab_lum_len; 1581 s->luma_dc_vlc_length= uni_DCtab_lum_len;
1582 s->chroma_dc_vlc_length= uni_DCtab_chrom_len; 1582 s->chroma_dc_vlc_length= uni_DCtab_chrom_len;
1583 s->ac_esc_length= 7+2+1+6+1+12+1; 1583 s->ac_esc_length= 7+2+1+6+1+12+1;
1584 1584
1585 if(s->flags & CODEC_FLAG_GLOBAL_HEADER){ 1585 if(s->flags & CODEC_FLAG_GLOBAL_HEADER){
1586
1586 s->avctx->extradata= av_malloc(1024); 1587 s->avctx->extradata= av_malloc(1024);
1587 init_put_bits(&s->pb, s->avctx->extradata, 1024, NULL, NULL); 1588 init_put_bits(&s->pb, s->avctx->extradata, 1024, NULL, NULL);
1588 1589
1589 mpeg4_encode_visual_object_header(s); 1590 mpeg4_encode_visual_object_header(s);
1590 mpeg4_encode_vol_header(s, 0, 0); 1591 mpeg4_encode_vol_header(s, 0, 0);
2903 }else{ /* P/S_TYPE */ 2904 }else{ /* P/S_TYPE */
2904 int mx, my, pred_x, pred_y, bits; 2905 int mx, my, pred_x, pred_y, bits;
2905 int16_t * const mot_val= s->motion_val[s->block_index[0]]; 2906 int16_t * const mot_val= s->motion_val[s->block_index[0]];
2906 const int stride= s->block_wrap[0]*2; 2907 const int stride= s->block_wrap[0]*2;
2907 2908
2908 do{ 2909 // do{ //FIXME
2909 bits= show_bits(&s->gb, 17); 2910 bits= show_bits(&s->gb, 17);
2910 if(bits==MOTION_MARKER){ 2911 if(bits==MOTION_MARKER){
2911 return mb_num-1; 2912 return mb_num-1;
2912 } 2913 }
2913 skip_bits1(&s->gb); 2914 skip_bits1(&s->gb);
2934 cbpc = get_vlc2(&s->gb, inter_MCBPC_vlc.table, INTER_MCBPC_VLC_BITS, 2); 2935 cbpc = get_vlc2(&s->gb, inter_MCBPC_vlc.table, INTER_MCBPC_VLC_BITS, 2);
2935 if (cbpc < 0){ 2936 if (cbpc < 0){
2936 fprintf(stderr, "cbpc corrupted at %d %d\n", s->mb_x, s->mb_y); 2937 fprintf(stderr, "cbpc corrupted at %d %d\n", s->mb_x, s->mb_y);
2937 return -1; 2938 return -1;
2938 } 2939 }
2939 }while(cbpc == 20); 2940 // }while(cbpc == 20);
2940 2941
2941 s->cbp_table[xy]= cbpc&(8+3); //8 is dquant 2942 s->cbp_table[xy]= cbpc&(8+3); //8 is dquant
2942 2943
2943 s->mb_intra = ((cbpc & 4) != 0); 2944 s->mb_intra = ((cbpc & 4) != 0);
2944 2945