From ea1c5011b34287aaad8c4fdc9100c3fe6b167134 Mon Sep 17 00:00:00 2001 From: Hendrik Leppkes Date: Mon, 27 Feb 2012 17:21:16 +0100 Subject: [PATCH] dxva2_h264: fix signaling of mbaff frames MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The MBAFF flag may only be signaled if we're actually dealing with a full frame, and not singular fields, as it can happen in mixed content. Signed-off-by: Martin Storsjö --- libavcodec/dxva2_h264.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libavcodec/dxva2_h264.c b/libavcodec/dxva2_h264.c index ffe71a9656..5cdf5dea5c 100644 --- a/libavcodec/dxva2_h264.c +++ b/libavcodec/dxva2_h264.c @@ -93,7 +93,8 @@ static void fill_picture_parameters(struct dxva_context *ctx, const H264Context pp->num_ref_frames = h->sps.ref_frame_count; pp->wBitFields = ((s->picture_structure != PICT_FRAME) << 0) | - (h->sps.mb_aff << 1) | + ((h->sps.mb_aff && + (s->picture_structure == PICT_FRAME)) << 1) | (h->sps.residual_color_transform_flag << 2) | /* sp_for_switch_flag (not implemented by Libav) */ (0 << 3) |