It's a race with frame threading.
Showing the changes to libavcodec (1 of 1 file). Show all
Unified · Split
| @@ -3135,17 +3135,14 @@ static int hevc_frame_end(HEVCContext *s) · 3134 unmodified lines | ||
| 3135 | 3135 | if (ret < 0) { |
| 3136 | 3136 | av_log(s->avctx, AV_LOG_ERROR, |
| 3137 | 3137 | "hardware accelerator failed to decode picture\n"); |
| 3138 | − ff_hevc_unref_frame(s->cur_frame, ~0); | |
| 3139 | 3138 | return ret; |
| 3140 | 3139 | } |
| 3141 | 3140 | } else { |
| 3142 | 3141 | if (s->avctx->err_recognition & AV_EF_CRCCHECK && |
| 3143 | 3142 | s->sei.picture_hash.is_md5) { |
| 3144 | 3143 | ret = verify_md5(s, s->cur_frame->f); |
| 3145 | − if (ret < 0 && s->avctx->err_recognition & AV_EF_EXPLODE) { | |
| 3146 | − ff_hevc_unref_frame(s->cur_frame, ~0); | |
| 3144 | + if (ret < 0 && s->avctx->err_recognition & AV_EF_EXPLODE) | |
| 3147 | 3145 | return ret; |
| 3148 | − } | |
| 3149 | 3146 | } |
| 3150 | 3147 | } |
| 3151 | 3148 | s->sei.picture_hash.is_md5 = 0; |