Skip to content
This repository has been archived by the owner on May 17, 2023. It is now read-only.

Commit

Permalink
Fix can't set interlace picture structure issue
Browse files Browse the repository at this point in the history
  • Loading branch information
kchen1024 authored and Sherry-Lin committed Jul 18, 2022
1 parent 8c1d8fd commit 9264f6a
Showing 1 changed file with 16 additions and 0 deletions.
16 changes: 16 additions & 0 deletions _studio/shared/src/mfx_vpp_vaapi.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1334,6 +1334,22 @@ if (pParams->mirroringExt)
}
}

// Additional parameters for interlaced cases
{
if (pParams->targetSurface.frameInfo.PicStruct == MFX_PICSTRUCT_FIELD_TFF &&
pRefSurf->frameInfo.PicStruct == MFX_PICSTRUCT_FIELD_TFF)
{
m_pipelineParam[0].input_surface_flag = VA_TOP_FIELD_FIRST;
m_pipelineParam[0].output_surface_flag = VA_TOP_FIELD_FIRST;
}
if (pParams->targetSurface.frameInfo.PicStruct == MFX_PICSTRUCT_FIELD_BFF &&
pRefSurf->frameInfo.PicStruct == MFX_PICSTRUCT_FIELD_BFF)
{
m_pipelineParam[0].input_surface_flag = VA_BOTTOM_FIELD_FIRST;
m_pipelineParam[0].output_surface_flag = VA_BOTTOM_FIELD_FIRST;
}
}

vaSts = vaCreateBuffer(m_vaDisplay,
m_vaContextVPP,
VAProcPipelineParameterBufferType,
Expand Down

0 comments on commit 9264f6a

Please sign in to comment.