diff --git a/libavcodec/alac.c b/libavcodec/alac.c index 48903a671bbb9a5539ba6a1980c81c66da00acd8..9579e18185ba347ea0287db16112b23d00cc05e0 100644 --- a/libavcodec/alac.c +++ b/libavcodec/alac.c @@ -307,6 +307,12 @@ static int decode_element(AVCodecContext *avctx, AVFrame *frame, int ch_index, int lpc_quant[2]; int rice_history_mult[2]; + if (!alac->rice_limit) { + avpriv_request_sample(alac->avctx, + "Compression with rice limit 0"); + return AVERROR(ENOSYS); + } + decorr_shift = get_bits(&alac->gb, 8); decorr_left_weight = get_bits(&alac->gb, 8);