comparison wmv2.c @ 1598:932d306bf1dc libavcodec

av_log() patch by (Michel Bardiaux <mbardiaux at peaktime dot be>)
author michael
date Mon, 03 Nov 2003 13:26:22 +0000
parents 7f9f0bedc2e1
children ccf7c96a630f
comparison
equal deleted inserted replaced
1597:4c9165372ab3 1598:932d306bf1dc
336 if(code==0) return -1; 336 if(code==0) return -1;
337 337
338 s->slice_height = s->mb_height / code; 338 s->slice_height = s->mb_height / code;
339 339
340 if(s->avctx->debug&FF_DEBUG_PICT_INFO){ 340 if(s->avctx->debug&FF_DEBUG_PICT_INFO){
341 printf("fps:%d, br:%d, qpbit:%d, abt_flag:%d, j_type_bit:%d, tl_mv_flag:%d, mbrl_bit:%d, code:%d, flag3:%d, slices:%d\n", 341 av_log(s->avctx, AV_LOG_DEBUG, "fps:%d, br:%d, qpbit:%d, abt_flag:%d, j_type_bit:%d, tl_mv_flag:%d, mbrl_bit:%d, code:%d, flag3:%d, slices:%d\n",
342 fps, s->bit_rate, w->mspel_bit, w->abt_flag, w->j_type_bit, w->top_left_mv_flag, w->per_mb_rl_bit, code, w->flag3, 342 fps, s->bit_rate, w->mspel_bit, w->abt_flag, w->j_type_bit, w->top_left_mv_flag, w->per_mb_rl_bit, code, w->flag3,
343 code); 343 code);
344 } 344 }
345 return 0; 345 return 0;
346 } 346 }
364 decode_ext_header(w); 364 decode_ext_header(w);
365 365
366 s->pict_type = get_bits(&s->gb, 1) + 1; 366 s->pict_type = get_bits(&s->gb, 1) + 1;
367 if(s->pict_type == I_TYPE){ 367 if(s->pict_type == I_TYPE){
368 code = get_bits(&s->gb, 7); 368 code = get_bits(&s->gb, 7);
369 printf("I7:%X/\n", code); 369 av_log(s->avctx, AV_LOG_ERROR, "I7:%X/\n", code);
370 } 370 }
371 s->qscale = get_bits(&s->gb, 5); 371 s->qscale = get_bits(&s->gb, 5);
372 if(s->qscale < 0) 372 if(s->qscale < 0)
373 return -1; 373 return -1;
374 374
395 s->dc_table_index = get_bits1(&s->gb); 395 s->dc_table_index = get_bits1(&s->gb);
396 } 396 }
397 s->inter_intra_pred= 0; 397 s->inter_intra_pred= 0;
398 s->no_rounding = 1; 398 s->no_rounding = 1;
399 if(s->avctx->debug&FF_DEBUG_PICT_INFO){ 399 if(s->avctx->debug&FF_DEBUG_PICT_INFO){
400 printf("qscale:%d rlc:%d rl:%d dc:%d mbrl:%d j_type:%d \n", 400 av_log(s->avctx, AV_LOG_DEBUG, "qscale:%d rlc:%d rl:%d dc:%d mbrl:%d j_type:%d \n",
401 s->qscale, 401 s->qscale,
402 s->rl_chroma_table_index, 402 s->rl_chroma_table_index,
403 s->rl_table_index, 403 s->rl_table_index,
404 s->dc_table_index, 404 s->dc_table_index,
405 s->per_mb_rl_table, 405 s->per_mb_rl_table,
445 445
446 s->inter_intra_pred= (s->width*s->height < 320*240 && s->bit_rate<=II_BITRATE); 446 s->inter_intra_pred= (s->width*s->height < 320*240 && s->bit_rate<=II_BITRATE);
447 s->no_rounding ^= 1; 447 s->no_rounding ^= 1;
448 448
449 if(s->avctx->debug&FF_DEBUG_PICT_INFO){ 449 if(s->avctx->debug&FF_DEBUG_PICT_INFO){
450 printf("rl:%d rlc:%d dc:%d mv:%d mbrl:%d qp:%d mspel:%d per_mb_abt:%d abt_type:%d cbp:%d ii:%d\n", 450 av_log(s->avctx, AV_LOG_DEBUG, "rl:%d rlc:%d dc:%d mv:%d mbrl:%d qp:%d mspel:%d per_mb_abt:%d abt_type:%d cbp:%d ii:%d\n",
451 s->rl_table_index, 451 s->rl_table_index,
452 s->rl_chroma_table_index, 452 s->rl_chroma_table_index,
453 s->dc_table_index, 453 s->dc_table_index,
454 s->mv_table_index, 454 s->mv_table_index,
455 s->per_mb_rl_table, 455 s->per_mb_rl_table,
469 469
470 // if(w->j_type) 470 // if(w->j_type)
471 // return wmv2_decode_j_picture(w); //FIXME 471 // return wmv2_decode_j_picture(w); //FIXME
472 472
473 if(w->j_type){ 473 if(w->j_type){
474 printf("J-type picture isnt supported\n"); 474 av_log(s->avctx, AV_LOG_ERROR, "J-type picture isnt supported\n");
475 return -1; 475 return -1;
476 } 476 }
477 477
478 return 0; 478 return 0;
479 } 479 }
602 simple_idct48_add(dst , stride, block1); 602 simple_idct48_add(dst , stride, block1);
603 simple_idct48_add(dst + 4 , stride, w->abt_block2[n]); 603 simple_idct48_add(dst + 4 , stride, w->abt_block2[n]);
604 memset(w->abt_block2[n], 0, 64*sizeof(DCTELEM)); 604 memset(w->abt_block2[n], 0, 64*sizeof(DCTELEM));
605 break; 605 break;
606 default: 606 default:
607 fprintf(stderr, "internal error in WMV2 abt\n"); 607 av_log(s->avctx, AV_LOG_ERROR, "internal error in WMV2 abt\n");
608 } 608 }
609 } 609 }
610 610
611 void ff_wmv2_add_mb(MpegEncContext *s, DCTELEM block1[6][64], uint8_t *dest_y, uint8_t *dest_cb, uint8_t *dest_cr){ 611 void ff_wmv2_add_mb(MpegEncContext *s, DCTELEM block1[6][64], uint8_t *dest_y, uint8_t *dest_cb, uint8_t *dest_cr){
612 Wmv2Context * const w= (Wmv2Context*)s; 612 Wmv2Context * const w= (Wmv2Context*)s;
736 cbp = code & 0x3f; 736 cbp = code & 0x3f;
737 } else { 737 } else {
738 s->mb_intra = 1; 738 s->mb_intra = 1;
739 code = get_vlc2(&s->gb, mb_intra_vlc.table, MB_INTRA_VLC_BITS, 2); 739 code = get_vlc2(&s->gb, mb_intra_vlc.table, MB_INTRA_VLC_BITS, 2);
740 if (code < 0){ 740 if (code < 0){
741 fprintf(stderr, "II-cbp illegal at %d %d\n", s->mb_x, s->mb_y); 741 av_log(s->avctx, AV_LOG_ERROR, "II-cbp illegal at %d %d\n", s->mb_x, s->mb_y);
742 return -1; 742 return -1;
743 } 743 }
744 /* predict coded block pattern */ 744 /* predict coded block pattern */
745 cbp = 0; 745 cbp = 0;
746 for(i=0;i<6;i++) { 746 for(i=0;i<6;i++) {
782 s->mv[0][0][1] = my; 782 s->mv[0][0][1] = my;
783 783
784 for (i = 0; i < 6; i++) { 784 for (i = 0; i < 6; i++) {
785 if (wmv2_decode_inter_block(w, block[i], i, (cbp >> (5 - i)) & 1) < 0) 785 if (wmv2_decode_inter_block(w, block[i], i, (cbp >> (5 - i)) & 1) < 0)
786 { 786 {
787 fprintf(stderr,"\nerror while decoding inter block: %d x %d (%d)\n", s->mb_x, s->mb_y, i); 787 av_log(s->avctx, AV_LOG_ERROR, "\nerror while decoding inter block: %d x %d (%d)\n", s->mb_x, s->mb_y, i);
788 return -1; 788 return -1;
789 } 789 }
790 } 790 }
791 } else { 791 } else {
792 //if(s->pict_type==P_TYPE) 792 //if(s->pict_type==P_TYPE)
803 } 803 }
804 804
805 for (i = 0; i < 6; i++) { 805 for (i = 0; i < 6; i++) {
806 if (msmpeg4_decode_block(s, block[i], i, (cbp >> (5 - i)) & 1, NULL) < 0) 806 if (msmpeg4_decode_block(s, block[i], i, (cbp >> (5 - i)) & 1, NULL) < 0)
807 { 807 {
808 fprintf(stderr,"\nerror while decoding intra block: %d x %d (%d)\n", s->mb_x, s->mb_y, i); 808 av_log(s->avctx, AV_LOG_ERROR, "\nerror while decoding intra block: %d x %d (%d)\n", s->mb_x, s->mb_y, i);
809 return -1; 809 return -1;
810 } 810 }
811 } 811 }
812 } 812 }
813 813