comparison mpeg12.c @ 10596:a228e8e3e347 libavcodec

Print errors instead of just ignoring contradictionary values in mpeg2 silently.
author michael
date Sun, 29 Nov 2009 14:31:40 +0000
parents c58c770b17f5
children 40af8390d83f
comparison
equal deleted inserted replaced
10595:c58c770b17f5 10596:a228e8e3e347
1543 s->alternate_scan = get_bits1(&s->gb); 1543 s->alternate_scan = get_bits1(&s->gb);
1544 s->repeat_first_field = get_bits1(&s->gb); 1544 s->repeat_first_field = get_bits1(&s->gb);
1545 s->chroma_420_type = get_bits1(&s->gb); 1545 s->chroma_420_type = get_bits1(&s->gb);
1546 s->progressive_frame = get_bits1(&s->gb); 1546 s->progressive_frame = get_bits1(&s->gb);
1547 1547
1548 if(s->progressive_sequence) 1548 if(s->progressive_sequence && !s->progressive_frame){
1549 s->progressive_frame= 1; 1549 s->progressive_frame= 1;
1550 if(s->progressive_frame){ 1550 av_log(s->avctx, AV_LOG_ERROR, "interlaced frame in progressive sequence, ignoring\n");
1551 }
1552
1553 if(s->picture_structure==0 || (s->progressive_frame && s->picture_structure!=PICT_FRAME)){
1554 av_log(s->avctx, AV_LOG_ERROR, "picture_structure %d invalid, ignoring\n", s->picture_structure);
1551 s->picture_structure= PICT_FRAME; 1555 s->picture_structure= PICT_FRAME;
1556 }
1557
1558 if(s->progressive_frame && !s->frame_pred_frame_dct){
1559 av_log(s->avctx, AV_LOG_ERROR, "invalid frame_pred_frame_dct\n");
1552 s->frame_pred_frame_dct= 1; 1560 s->frame_pred_frame_dct= 1;
1553 } 1561 }
1554 1562
1555 if(s->picture_structure == PICT_FRAME){ 1563 if(s->picture_structure == PICT_FRAME){
1556 s->first_field=0; 1564 s->first_field=0;