[FFmpeg-cvslog] r14288 - trunk/libavcodec/h264.c
michael
subversion
Sat Jul 19 04:44:17 CEST 2008
Author: michael
Date: Sat Jul 19 04:44:17 2008
New Revision: 14288
Log:
Drop out of order pics even if bitstream_restriction_flag is set.
Modified:
trunk/libavcodec/h264.c
Modified: trunk/libavcodec/h264.c
==============================================================================
--- trunk/libavcodec/h264.c (original)
+++ trunk/libavcodec/h264.c Sat Jul 19 04:44:17 2008
@@ -7861,10 +7861,12 @@ static int decode_frame(AVCodecContext *
}
out_of_order = !cross_idr && prev && out->poc < prev->poc;
+
+ if(prev && pics <= s->avctx->has_b_frames || out_of_order)
+ out = prev;
+
if(h->sps.bitstream_restriction_flag && s->avctx->has_b_frames >= h->sps.num_reorder_frames)
{ }
- else if(prev && pics <= s->avctx->has_b_frames)
- out = prev;
else if((out_of_order && pics-1 == s->avctx->has_b_frames && pics < 15)
|| (s->low_delay &&
((!cross_idr && prev && out->poc > prev->poc + 2)
@@ -7874,8 +7876,6 @@ static int decode_frame(AVCodecContext *
s->avctx->has_b_frames++;
out = prev;
}
- else if(out_of_order)
- out = prev;
if(out_of_order || pics > s->avctx->has_b_frames){
for(i=out_idx; h->delayed_pic[i]; i++)
More information about the ffmpeg-cvslog
mailing list