Mercurial > libavcodec.hg
comparison ac3dec.c @ 8249:5057047bcc52 libavcodec
ac3dec: skip decoding and use error concealment for remaining blocks in
the frame after an error occurs.
author | jbr |
---|---|
date | Wed, 03 Dec 2008 03:34:31 +0000 |
parents | f17b1eb9ccd1 |
children | be0f5221ccd0 |
comparison
equal
deleted
inserted
replaced
8248:45cfe1d44e86 | 8249:5057047bcc52 |
---|---|
1306 /* decode the audio blocks */ | 1306 /* decode the audio blocks */ |
1307 for (blk = 0; blk < s->num_blocks; blk++) { | 1307 for (blk = 0; blk < s->num_blocks; blk++) { |
1308 const float *output[s->out_channels]; | 1308 const float *output[s->out_channels]; |
1309 if (!err && decode_audio_block(s, blk)) { | 1309 if (!err && decode_audio_block(s, blk)) { |
1310 av_log(avctx, AV_LOG_ERROR, "error decoding the audio block\n"); | 1310 av_log(avctx, AV_LOG_ERROR, "error decoding the audio block\n"); |
1311 err = 1; | |
1311 } | 1312 } |
1312 for (ch = 0; ch < s->out_channels; ch++) | 1313 for (ch = 0; ch < s->out_channels; ch++) |
1313 output[ch] = s->output[ch]; | 1314 output[ch] = s->output[ch]; |
1314 s->dsp.float_to_int16_interleave(out_samples, output, 256, s->out_channels); | 1315 s->dsp.float_to_int16_interleave(out_samples, output, 256, s->out_channels); |
1315 out_samples += 256 * s->out_channels; | 1316 out_samples += 256 * s->out_channels; |