comparison flac.c @ 7301:aab7f1fb59ea libavcodec

If metadata has been parsed goto end instead of trying to decorrelate and output somehing nonexistng.
author michael
date Fri, 18 Jul 2008 11:08:15 +0000
parents 3511d8cdd310
children 3d8cf33fbafb
comparison
equal deleted inserted replaced
7300:7e806e21c193 7301:aab7f1fb59ea
630 } 630 }
631 } 631 }
632 632
633 init_get_bits(&s->gb, buf, buf_size*8); 633 init_get_bits(&s->gb, buf, buf_size*8);
634 634
635 if (!metadata_parse(s)) 635 if(metadata_parse(s))
636 { 636 goto end;
637
637 tmp = show_bits(&s->gb, 16); 638 tmp = show_bits(&s->gb, 16);
638 if((tmp & 0xFFFE) != 0xFFF8){ 639 if((tmp & 0xFFFE) != 0xFFF8){
639 av_log(s->avctx, AV_LOG_ERROR, "FRAME HEADER not here\n"); 640 av_log(s->avctx, AV_LOG_ERROR, "FRAME HEADER not here\n");
640 while(get_bits_count(&s->gb)/8+2 < buf_size && (show_bits(&s->gb, 16) & 0xFFFE) != 0xFFF8) 641 while(get_bits_count(&s->gb)/8+2 < buf_size && (show_bits(&s->gb, 16) & 0xFFFE) != 0xFFF8)
641 skip_bits(&s->gb, 8); 642 skip_bits(&s->gb, 8);
646 av_log(s->avctx, AV_LOG_ERROR, "decode_frame() failed\n"); 647 av_log(s->avctx, AV_LOG_ERROR, "decode_frame() failed\n");
647 s->bitstream_size=0; 648 s->bitstream_size=0;
648 s->bitstream_index=0; 649 s->bitstream_index=0;
649 return -1; 650 return -1;
650 } 651 }
651 }
652 652
653 653
654 #if 0 654 #if 0
655 /* fix the channel order here */ 655 /* fix the channel order here */
656 if (s->order == MID_SIDE) 656 if (s->order == MID_SIDE)