From ebd1c505d22ad96e044880755ed9f4cf7cab4f78 Mon Sep 17 00:00:00 2001 From: "Ronald S. Bultje" Date: Sat, 12 Jul 2014 18:38:13 -0400 Subject: h264: fix direct temporal mvs for bottom-field-first poc order. Fixes http://forum.doom9.org/showthread.php?t=170867. Fixes: corrupt-1677.mkv Signed-off-by: Michael Niedermayer --- libavcodec/h264_direct.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'libavcodec/h264_direct.c') diff --git a/libavcodec/h264_direct.c b/libavcodec/h264_direct.c index 3cc5f85715..b83a279bc0 100644 --- a/libavcodec/h264_direct.c +++ b/libavcodec/h264_direct.c @@ -48,7 +48,9 @@ static int get_scale_factor(H264Context * const h, int poc, int poc1, int i){ } void ff_h264_direct_dist_scale_factor(H264Context * const h){ - const int poc = h->cur_pic_ptr->field_poc[h->picture_structure == PICT_BOTTOM_FIELD]; + const int poc = h->picture_structure == PICT_FRAME ? + h->cur_pic_ptr->poc : + h->cur_pic_ptr->field_poc[h->picture_structure == PICT_BOTTOM_FIELD]; const int poc1 = h->ref_list[1][0].poc; int i, field; -- cgit v1.2.3