Commit e4af9be0 authored by Timothy Gu's avatar Timothy Gu

Revert "Merge commit 'd1d76780'"

This reverts commit 796027f2, reversing
changes made to bca30ed2.

Preemptive revert before further testing has been done.
parent 796027f2
......@@ -1497,8 +1497,6 @@ static int h264_field_start(H264Context *h, const H264SliceContext *sl,
h->nb_mmco = sl->nb_mmco;
h->explicit_ref_marking = sl->explicit_ref_marking;
h->picture_idr = nal->type == H264_NAL_IDR_SLICE;
/* Set the frame properties/side data. Only done for the second field in
* field coded frames, since some SEI information is present for each field
* and is merged by the SEI parsing code. */
......@@ -1831,11 +1829,6 @@ int ff_h264_decode_slice_header(H264Context *h, H264SliceContext *sl,
}
}
if (h->picture_idr && nal->type != H264_NAL_IDR_SLICE) {
av_log(h->avctx, AV_LOG_ERROR, "Invalid mix of IDR and non-IDR slices\n");
return AVERROR_INVALIDDATA;
}
av_assert1(h->mb_num == h->mb_width * h->mb_height);
if (sl->first_mb_addr << FIELD_OR_MBAFF_PICTURE(h) >= h->mb_num ||
sl->first_mb_addr >= h->mb_num) {
......
......@@ -783,6 +783,12 @@ again:
ret = -1;
goto end;
}
if (nal->type != H264_NAL_IDR_SLICE) {
av_log(h->avctx, AV_LOG_ERROR,
"Invalid mix of idr and non-idr slices\n");
ret = -1;
goto end;
}
if(!idr_cleared) {
if (h->current_slice && (avctx->active_thread_type & FF_THREAD_SLICE)) {
av_log(h, AV_LOG_ERROR, "invalid mixed IDR / non IDR frames cannot be decoded in slice multithreading mode\n");
......
......@@ -384,11 +384,6 @@ typedef struct H264Context {
*/
int postpone_filter;
/*
* Set to 1 when the current picture is IDR, 0 otherwise.
*/
int picture_idr;
int8_t(*intra4x4_pred_mode);
H264PredContext hpc;
......
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