~ppsspp/ppsspp/ffmpeg

« back to all changes in this revision

Viewing changes to libavcodec/takdec.c

  • Committer: Henrik Rydgård
  • Date: 2014-01-03 10:44:32 UTC
  • Revision ID: git-v1:87c6c126784b1718bfa448ecf2e6a9fef781eb4e
Update our ffmpeg snapshot to a clone of the official repository.

This is because Maxim's at3plus support has been officially merged!

Show diffs side-by-side

added added

removed removed

Lines of Context:
686
686
    if ((ret = ff_tak_decode_frame_header(avctx, gb, &s->ti, 0)) < 0)
687
687
        return ret;
688
688
 
689
 
    if (avctx->err_recognition & AV_EF_CRCCHECK) {
 
689
    if (avctx->err_recognition & (AV_EF_CRCCHECK|AV_EF_COMPLIANT)) {
690
690
        hsize = get_bits_count(gb) / 8;
691
691
        if (ff_tak_check_crc(pkt->data, hsize)) {
692
692
            av_log(avctx, AV_LOG_ERROR, "CRC error\n");
693
 
            return AVERROR_INVALIDDATA;
 
693
            if (avctx->err_recognition & AV_EF_EXPLODE)
 
694
                return AVERROR_INVALIDDATA;
694
695
        }
695
696
    }
696
697
 
861
862
    else if (get_bits_left(gb) > 0)
862
863
        av_log(avctx, AV_LOG_DEBUG, "underread\n");
863
864
 
864
 
    if (avctx->err_recognition & AV_EF_CRCCHECK) {
 
865
    if (avctx->err_recognition & (AV_EF_CRCCHECK | AV_EF_COMPLIANT)) {
865
866
        if (ff_tak_check_crc(pkt->data + hsize,
866
867
                             get_bits_count(gb) / 8 - hsize)) {
867
868
            av_log(avctx, AV_LOG_ERROR, "CRC error\n");
868
 
            return AVERROR_INVALIDDATA;
 
869
            if (avctx->err_recognition & AV_EF_EXPLODE)
 
870
                return AVERROR_INVALIDDATA;
869
871
        }
870
872
    }
871
873