mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
avcodec/wavarc: really fix bits per sample detection
This commit is contained in:
parent
64b242d030
commit
c5aeb8f4db
@ -52,7 +52,7 @@ static av_cold int wavarc_init(AVCodecContext *avctx)
|
||||
{
|
||||
WavArcContext *s = avctx->priv_data;
|
||||
|
||||
if (avctx->extradata_size < 44)
|
||||
if (avctx->extradata_size < 52)
|
||||
return AVERROR_INVALIDDATA;
|
||||
if (AV_RL32(avctx->extradata + 16) != MKTAG('R','I','F','F'))
|
||||
return AVERROR_INVALIDDATA;
|
||||
@ -68,9 +68,9 @@ static av_cold int wavarc_init(AVCodecContext *avctx)
|
||||
av_channel_layout_default(&avctx->ch_layout, AV_RL16(avctx->extradata + 38));
|
||||
avctx->sample_rate = AV_RL32(avctx->extradata + 40);
|
||||
|
||||
switch (AV_RL16(avctx->extradata + 38)) {
|
||||
case 1: avctx->sample_fmt = AV_SAMPLE_FMT_U8P; break;
|
||||
case 2: avctx->sample_fmt = AV_SAMPLE_FMT_S16P; break;
|
||||
switch (AV_RL16(avctx->extradata + 50)) {
|
||||
case 8: avctx->sample_fmt = AV_SAMPLE_FMT_U8P; break;
|
||||
case 16: avctx->sample_fmt = AV_SAMPLE_FMT_S16P; break;
|
||||
}
|
||||
|
||||
s->shift = 0;
|
||||
|
Loading…
Reference in New Issue
Block a user