Commit 406f3007 authored by Hendrik Leppkes's avatar Hendrik Leppkes

dxva2_h264: fix reference field marking in long slice struct

Fixes artifacts in interlaced decoding on old Intel GPUs.
parent f5025836
...@@ -252,7 +252,7 @@ static void fill_slice_long(AVCodecContext *avctx, DXVA_Slice_H264_Long *slice, ...@@ -252,7 +252,7 @@ static void fill_slice_long(AVCodecContext *avctx, DXVA_Slice_H264_Long *slice,
else else
index = get_refpic_index(pp, ff_dxva2_get_surface_index(avctx, ctx, r->f)); index = get_refpic_index(pp, ff_dxva2_get_surface_index(avctx, ctx, r->f));
fill_picture_entry(&slice->RefPicList[list][i], index, 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++) { for (plane = 0; plane < 3; plane++) {
int w, o; int w, o;
if (plane == 0 && sl->luma_weight_flag[list]) { if (plane == 0 && sl->luma_weight_flag[list]) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment