mirror of https://git.ffmpeg.org/ffmpeg.git
Correct assignment of interlaced_frame; was being set on output frames,
in display order, based on decoding information in decoding order. Now set properly, immediately upon completion of decode. Based on original patch from Reinhard Nissl, rnisssl % gmx , de Original Thread: [FFmpeg-devel] H.264 + PAFF: BBC HD recording shows extreme interlacing artefacts, Thu, 01 Nov 2007 22:43:09 Originally committed as revision 10931 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
18c05a375b
commit
84a8596d23
|
@ -7763,6 +7763,8 @@ static int decode_frame(AVCodecContext *avctx,
|
||||||
*data_size = 0;
|
*data_size = 0;
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
cur->interlaced_frame = FIELD_OR_MBAFF_PICTURE;
|
||||||
|
|
||||||
//FIXME do something with unavailable reference frames
|
//FIXME do something with unavailable reference frames
|
||||||
|
|
||||||
#if 0 //decode order
|
#if 0 //decode order
|
||||||
|
@ -7845,7 +7847,6 @@ static int decode_frame(AVCodecContext *avctx,
|
||||||
/* we substract 1 because it is added on utils.c */
|
/* we substract 1 because it is added on utils.c */
|
||||||
avctx->frame_number = s->picture_number - 1;
|
avctx->frame_number = s->picture_number - 1;
|
||||||
#endif
|
#endif
|
||||||
pict->interlaced_frame = FIELD_OR_MBAFF_PICTURE;
|
|
||||||
return get_consumed_bytes(s, buf_index, buf_size);
|
return get_consumed_bytes(s, buf_index, buf_size);
|
||||||
}
|
}
|
||||||
#if 0
|
#if 0
|
||||||
|
|
Loading…
Reference in New Issue