From b5e6aa6c3337dc740d67aa68116530fe604bae76 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 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. Reviewed-by: Derek Buitenhuis Signed-off-by: Michael Niedermayer --- 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 3bda097cc4..6114a77f5a 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 FFmpeg) */ (0 << 3) |