Commit f6dece86 authored by Amir Pauker's avatar Amir Pauker Committed by Michael Niedermayer

avcodec/h264dec: set AVFrame decode_error_flags in case of decoding error

set AVFrame decode_error_flags in case h->slice_ctx->er.error_occurred is set
after the call to ff_h264_execute_decode_slices. This allows the user to detect
concealed decoding errors in the call to avcodec_receive_frame
Signed-off-by: 's avatarAmir Pauker <amir@livelyvideo.tv>
Signed-off-by: 's avatarMichael Niedermayer <michael@niedermayer.cc>
parent 70ba8e2f
...@@ -761,6 +761,11 @@ static int decode_nal_units(H264Context *h, const uint8_t *buf, int buf_size) ...@@ -761,6 +761,11 @@ static int decode_nal_units(H264Context *h, const uint8_t *buf, int buf_size)
if (ret < 0 && (h->avctx->err_recognition & AV_EF_EXPLODE)) if (ret < 0 && (h->avctx->err_recognition & AV_EF_EXPLODE))
goto end; goto end;
// set decode_error_flags to allow users to detect concealed decoding errors
if ((ret < 0 || h->slice_ctx->er.error_occurred) && h->cur_pic_ptr) {
h->cur_pic_ptr->f->decode_error_flags |= FF_DECODE_ERROR_DECODE_SLICES;
}
ret = 0; ret = 0;
end: end:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment