[FFmpeg-devel] [PATCH] dxva2_h264: fix reference field marking in long slice struct

Hendrik Leppkes h.leppkes at gmail.com
Fri Jan 22 14:02:21 CET 2016


Fixes artifacts in interlaced decoding on old Intel GPUs.
---
 libavcodec/dxva2_h264.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavcodec/dxva2_h264.c b/libavcodec/dxva2_h264.c
index 2f03114..61cce3a 100644
--- a/libavcodec/dxva2_h264.c
+++ b/libavcodec/dxva2_h264.c
@@ -252,7 +252,7 @@ static void fill_slice_long(AVCodecContext *avctx, DXVA_Slice_H264_Long *slice,
                 else
                     index = get_refpic_index(pp, ff_dxva2_get_surface_index(avctx, ctx, r->f));
                 fill_picture_entry(&slice->RefPicList[list][i], index,
-                                   r->reference == PICT_BOTTOM_FIELD);
+                                   sl->ref_list[list][i].reference == PICT_BOTTOM_FIELD);
                 for (plane = 0; plane < 3; plane++) {
                     int w, o;
                     if (plane == 0 && sl->luma_weight_flag[list]) {
-- 
2.6.2.windows.1



More information about the ffmpeg-devel mailing list