summaryrefslogtreecommitdiff
path: root/libavcodec/h264dec.c
diff options
context:
space:
mode:
authorJosh de Kock <joshdk@obe.tv>2018-09-26 10:35:04 +0100
committerKieran Kunhya <kierank@obe.tv>2018-10-26 11:48:14 +0100
commit0a055f463a60af764c083fd0ba3112037557de4b (patch)
tree2df6488d7086646d9776dfa736069abebc9f5229 /libavcodec/h264dec.c
parent4fcfb9c4ebf3650fd7e82ba78d81c8aebdabd228 (diff)
lavc/h264dec: don't error out when receiving multiple IDR slices
This error isn't particularly helpful as checking for mixed IDR/non-IDR NALUs would need to be done at a higher level to actually be accurate. Removing the error allows an API user to send individual slice NALUs (i.e. incomplete frames) so they can take advantage of slice threading. The ticket which this error was added for (#4408) no longer segfaults after removing this error (as the bug was likely fixed more properly elsewhere).
Diffstat (limited to 'libavcodec/h264dec.c')
-rw-r--r--libavcodec/h264dec.c5
1 files changed, 0 insertions, 5 deletions
diff --git a/libavcodec/h264dec.c b/libavcodec/h264dec.c
index 7b4c5c76ea..00d922fbe9 100644
--- a/libavcodec/h264dec.c
+++ b/libavcodec/h264dec.c
@@ -657,11 +657,6 @@ static int decode_nal_units(H264Context *h, const uint8_t *buf, int buf_size)
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");
- ret = AVERROR_INVALIDDATA;
- goto end;
- }
idr(h); // FIXME ensure we don't lose some frames if there is reordering
}
idr_cleared = 1;