h264_ps: when parsing a VUI fails, only abort when explode is set

A VUI doesn't contain anything strictly necessary for decoding.
Apparently there are many samples with truncated VUIs in the wild, this
commit should allow decoding them.
This commit is contained in:
Anton Khirnov 2013-10-26 10:22:31 +02:00
parent 79ef4b19bf
commit 94603feb1b

View File

@ -465,9 +465,11 @@ int ff_h264_decode_seq_parameter_set(H264Context *h)
}
sps->vui_parameters_present_flag = get_bits1(&h->gb);
if (sps->vui_parameters_present_flag)
if (decode_vui_parameters(h, sps) < 0)
if (sps->vui_parameters_present_flag) {
int ret = decode_vui_parameters(h, sps);
if (ret < 0 && h->avctx->err_recognition & AV_EF_EXPLODE)
goto fail;
}
if (!sps->sar.den)
sps->sar.den = 1;