Mercurial > libavcodec.hg
comparison h263dec.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 | 3d1d0490e5a6 |
children | 3e2b774edce4 |
comparison
equal
deleted
inserted
replaced
1597:4c9165372ab3 | 1598:932d306bf1dc |
---|---|
217 ff_draw_horiz_band(s, s->mb_y*16, 16); | 217 ff_draw_horiz_band(s, s->mb_y*16, 16); |
218 s->mb_y++; | 218 s->mb_y++; |
219 } | 219 } |
220 return 0; | 220 return 0; |
221 }else if(ret==SLICE_NOEND){ | 221 }else if(ret==SLICE_NOEND){ |
222 fprintf(stderr,"Slice mismatch at MB: %d\n", xy); | 222 av_log(s->avctx, AV_LOG_ERROR, "Slice mismatch at MB: %d\n", xy); |
223 ff_er_add_slice(s, s->resync_mb_x, s->resync_mb_y, s->mb_x+1, s->mb_y, (AC_END|DC_END|MV_END)&part_mask); | 223 ff_er_add_slice(s, s->resync_mb_x, s->resync_mb_y, s->mb_x+1, s->mb_y, (AC_END|DC_END|MV_END)&part_mask); |
224 return -1; | 224 return -1; |
225 } | 225 } |
226 fprintf(stderr,"Error at MB: %d\n", xy); | 226 av_log(s->avctx, AV_LOG_ERROR, "Error at MB: %d\n", xy); |
227 ff_er_add_slice(s, s->resync_mb_x, s->resync_mb_y, s->mb_x, s->mb_y, (AC_ERROR|DC_ERROR|MV_ERROR)&part_mask); | 227 ff_er_add_slice(s, s->resync_mb_x, s->resync_mb_y, s->mb_x, s->mb_y, (AC_ERROR|DC_ERROR|MV_ERROR)&part_mask); |
228 | 228 |
229 return -1; | 229 return -1; |
230 } | 230 } |
231 | 231 |
279 max_extra+= 48; | 279 max_extra+= 48; |
280 else if((s->workaround_bugs&FF_BUG_NO_PADDING)) | 280 else if((s->workaround_bugs&FF_BUG_NO_PADDING)) |
281 max_extra+= 256*256*256*64; | 281 max_extra+= 256*256*256*64; |
282 | 282 |
283 if(left>max_extra){ | 283 if(left>max_extra){ |
284 fprintf(stderr, "discarding %d junk bits at end, next would be %X\n", left, show_bits(&s->gb, 24)); | 284 av_log(s->avctx, AV_LOG_ERROR, "discarding %d junk bits at end, next would be %X\n", left, show_bits(&s->gb, 24)); |
285 } | 285 } |
286 else if(left<0){ | 286 else if(left<0){ |
287 fprintf(stderr, "overreading %d bits\n", -left); | 287 av_log(s->avctx, AV_LOG_ERROR, "overreading %d bits\n", -left); |
288 }else | 288 }else |
289 ff_er_add_slice(s, s->resync_mb_x, s->resync_mb_y, s->mb_x-1, s->mb_y, AC_END|DC_END|MV_END); | 289 ff_er_add_slice(s, s->resync_mb_x, s->resync_mb_y, s->mb_x-1, s->mb_y, AC_END|DC_END|MV_END); |
290 | 290 |
291 return 0; | 291 return 0; |
292 } | 292 } |
293 | 293 |
294 fprintf(stderr, "slice end not reached but screenspace end (%d left %06X, score= %d)\n", | 294 av_log(s->avctx, AV_LOG_ERROR, "slice end not reached but screenspace end (%d left %06X, score= %d)\n", |
295 s->gb.size_in_bits - get_bits_count(&s->gb), | 295 s->gb.size_in_bits - get_bits_count(&s->gb), |
296 show_bits(&s->gb, 24), s->padding_bug_score); | 296 show_bits(&s->gb, 24), s->padding_bug_score); |
297 | 297 |
298 ff_er_add_slice(s, s->resync_mb_x, s->resync_mb_y, s->mb_x, s->mb_y, (AC_END|DC_END|MV_END)&part_mask); | 298 ff_er_add_slice(s, s->resync_mb_x, s->resync_mb_y, s->mb_x, s->mb_y, (AC_END|DC_END|MV_END)&part_mask); |
299 | 299 |
413 if(s->codec_id==CODEC_ID_MPEG4){ | 413 if(s->codec_id==CODEC_ID_MPEG4){ |
414 next= mpeg4_find_frame_end(s, buf, buf_size); | 414 next= mpeg4_find_frame_end(s, buf, buf_size); |
415 }else if(s->codec_id==CODEC_ID_H263){ | 415 }else if(s->codec_id==CODEC_ID_H263){ |
416 next= h263_find_frame_end(s, buf, buf_size); | 416 next= h263_find_frame_end(s, buf, buf_size); |
417 }else{ | 417 }else{ |
418 fprintf(stderr, "this codec doesnt support truncated bitstreams\n"); | 418 av_log(s->avctx, AV_LOG_ERROR, "this codec doesnt support truncated bitstreams\n"); |
419 return -1; | 419 return -1; |
420 } | 420 } |
421 | 421 |
422 if( ff_combine_frame(s, next, &buf, &buf_size) < 0 ) | 422 if( ff_combine_frame(s, next, &buf, &buf_size) < 0 ) |
423 return buf_size; | 423 return buf_size; |
468 | 468 |
469 if(ret==FRAME_SKIPED) return get_consumed_bytes(s, buf_size); | 469 if(ret==FRAME_SKIPED) return get_consumed_bytes(s, buf_size); |
470 | 470 |
471 /* skip if the header was thrashed */ | 471 /* skip if the header was thrashed */ |
472 if (ret < 0){ | 472 if (ret < 0){ |
473 fprintf(stderr, "header damaged\n"); | 473 av_log(s->avctx, AV_LOG_ERROR, "header damaged\n"); |
474 return -1; | 474 return -1; |
475 } | 475 } |
476 | 476 |
477 avctx->has_b_frames= !s->low_delay; | 477 avctx->has_b_frames= !s->low_delay; |
478 | 478 |
578 SET_QPEL_FUNC(qpel_pixels_tab[1][13], qpel8_mc13_old_c) | 578 SET_QPEL_FUNC(qpel_pixels_tab[1][13], qpel8_mc13_old_c) |
579 SET_QPEL_FUNC(qpel_pixels_tab[1][15], qpel8_mc33_old_c) | 579 SET_QPEL_FUNC(qpel_pixels_tab[1][15], qpel8_mc33_old_c) |
580 } | 580 } |
581 | 581 |
582 if(avctx->debug & FF_DEBUG_BUGS) | 582 if(avctx->debug & FF_DEBUG_BUGS) |
583 printf("bugs: %X lavc_build:%d xvid_build:%d divx_version:%d divx_build:%d %s\n", | 583 av_log(s->avctx, AV_LOG_DEBUG, "bugs: %X lavc_build:%d xvid_build:%d divx_version:%d divx_build:%d %s\n", |
584 s->workaround_bugs, s->lavc_build, s->xvid_build, s->divx_version, s->divx_build, | 584 s->workaround_bugs, s->lavc_build, s->xvid_build, s->divx_version, s->divx_build, |
585 s->divx_packed ? "p" : ""); | 585 s->divx_packed ? "p" : ""); |
586 | 586 |
587 #if 0 // dump bits per frame / qp / complexity | 587 #if 0 // dump bits per frame / qp / complexity |
588 { | 588 { |