|
|
|
@ -201,7 +201,7 @@ void ff_flac_set_channel_layout(AVCodecContext *avctx) |
|
|
|
|
avctx->channel_layout = 0; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void ff_flac_parse_streaminfo(AVCodecContext *avctx, struct FLACStreaminfo *s, |
|
|
|
|
int ff_flac_parse_streaminfo(AVCodecContext *avctx, struct FLACStreaminfo *s, |
|
|
|
|
const uint8_t *buffer) |
|
|
|
|
{ |
|
|
|
|
GetBitContext gb; |
|
|
|
@ -213,6 +213,7 @@ void ff_flac_parse_streaminfo(AVCodecContext *avctx, struct FLACStreaminfo *s, |
|
|
|
|
av_log(avctx, AV_LOG_WARNING, "invalid max blocksize: %d\n", |
|
|
|
|
s->max_blocksize); |
|
|
|
|
s->max_blocksize = 16; |
|
|
|
|
return AVERROR_INVALIDDATA; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
skip_bits(&gb, 24); /* skip min frame size */ |
|
|
|
@ -225,6 +226,7 @@ void ff_flac_parse_streaminfo(AVCodecContext *avctx, struct FLACStreaminfo *s, |
|
|
|
|
if (s->bps < 4) { |
|
|
|
|
av_log(avctx, AV_LOG_ERROR, "invalid bps: %d\n", s->bps); |
|
|
|
|
s->bps = 16; |
|
|
|
|
return AVERROR_INVALIDDATA; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
avctx->channels = s->channels; |
|
|
|
@ -239,4 +241,6 @@ void ff_flac_parse_streaminfo(AVCodecContext *avctx, struct FLACStreaminfo *s, |
|
|
|
|
|
|
|
|
|
skip_bits_long(&gb, 64); /* md5 sum */ |
|
|
|
|
skip_bits_long(&gb, 64); /* md5 sum */ |
|
|
|
|
|
|
|
|
|
return 0; |
|
|
|
|
} |
|
|
|
|