Browse Source

alacdec: set sample_fmt in alac_decode_init()

tags/n0.9
Justin Ruggles 14 years ago
parent
commit
0f26f3d5c4
1 changed files with 10 additions and 9 deletions
  1. +10
    -9
      libavcodec/alac.c

+ 10
- 9
libavcodec/alac.c View File

@@ -491,15 +491,6 @@ static int alac_decode_frame(AVCodecContext *avctx,
} else
outputsamples = alac->setinfo_max_samples_per_frame;

switch (alac->setinfo_sample_size) {
case 16: avctx->sample_fmt = AV_SAMPLE_FMT_S16;
break;
case 24: avctx->sample_fmt = AV_SAMPLE_FMT_S32;
break;
default: av_log(avctx, AV_LOG_ERROR, "Sample depth %d is not supported.\n",
alac->setinfo_sample_size);
return -1;
}
alac->bytespersample = channels * av_get_bytes_per_sample(avctx->sample_fmt);

if(outputsamples > *outputsize / alac->bytespersample){
@@ -660,6 +651,16 @@ static av_cold int alac_decode_init(AVCodecContext * avctx)
return -1;
}

switch (alac->setinfo_sample_size) {
case 16: avctx->sample_fmt = AV_SAMPLE_FMT_S16;
break;
case 24: avctx->sample_fmt = AV_SAMPLE_FMT_S32;
break;
default: av_log(avctx, AV_LOG_ERROR, "Sample depth %d is not supported.\n",
alac->setinfo_sample_size);
return -1;
}

return 0;
}



Loading…
Cancel
Save