diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2013-04-09 23:11:06 +0200 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2013-04-09 23:12:24 +0200 |
commit | 62a1181015c2bd90adfadcd8c9ababba44665db2 (patch) | |
tree | 444468586ac0763c081a97251d9d9fe5ad9038a9 | |
parent | 1043cb8e80e2359307e14e03d2ade052245e7098 (diff) | |
download | ffmpeg-62a1181015c2bd90adfadcd8c9ababba44665db2.tar.gz |
h264: wait for missing slices only on frames
The EC code does not support fields currently thus it makes no
sense to wait for these cases (which also the check doesnt handle
correctly)
Fixes Ticket 2454
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavcodec/h264.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libavcodec/h264.c b/libavcodec/h264.c index 35387fac5f..929889043c 100644 --- a/libavcodec/h264.c +++ b/libavcodec/h264.c @@ -4248,7 +4248,7 @@ static int decode_slice(struct AVCodecContext *avctx, void *arg) avctx->codec_id != AV_CODEC_ID_H264 || (CONFIG_GRAY && (h->flags & CODEC_FLAG_GRAY)); - if (!(h->avctx->active_thread_type & FF_THREAD_SLICE)) { + if (!(h->avctx->active_thread_type & FF_THREAD_SLICE) && h->picture_structure == PICT_FRAME) { const int start_i = av_clip(h->resync_mb_x + h->resync_mb_y * h->mb_width, 0, h->mb_num - 1); if (start_i) { int prev_status = h->er.error_status_table[h->er.mb_index2xy[start_i - 1]]; |