DECODDE_VPP Structures#

Structures used by DECODE_VPP only.

API#

mfxSurfaceArray#

struct mfxSurfaceArray#

The structure is reference counted object to return array of surfaces allocated and processed by the library.

Public Members

mfxHDL Context#

The context of the memory interface. User should not touch (change, set, null) this pointer.

mfxStructVersion Version#

The version of the structure.

mfxStatus (*AddRef)(struct mfxSurfaceArray *surface_array)#

Increments the internal reference counter of the surface. The surface is not destroyed until the surface is released using the mfxSurfaceArray::Release function. mfxSurfaceArray::AddRef should be used each time a new link to the surface is created (for example, copy structure) for proper surface management.

Parameters

surface[in] Valid mfxSurfaceArray.

Returns

MFX_ERR_NONE If no error.

MFX_ERR_NULL_PTR If surface is NULL.

MFX_ERR_INVALID_HANDLE If mfxSurfaceArray->Context is invalid (for example NULL).

MFX_ERR_UNKNOWN Any internal error.

mfxStatus (*Release)(struct mfxSurfaceArray *surface_array)#

Decrements the internal reference counter of the surface. mfxSurfaceArray::Release should be called after using the mfxSurfaceArray::AddRef function to add a surface or when allocation logic requires it.

Parameters

surface_array[in] Valid mfxSurfaceArray.

Returns

MFX_ERR_NONE If no error.

MFX_ERR_NULL_PTR If surface is NULL.

MFX_ERR_INVALID_HANDLE If mfxSurfaceArray->Context is invalid (for example NULL).

MFX_ERR_UNDEFINED_BEHAVIOR If Reference Counter of surface is zero before call.

MFX_ERR_UNKNOWN Any internal error.

mfxStatus (*GetRefCounter)(struct mfxSurfaceArray *surface_array, mfxU32 *counter)#

Returns current reference counter of mfxSurfaceArray structure.

Parameters
  • surface[in] Valid surface_array.

  • counter[out] Sets counter to the current reference counter value.

Returns

MFX_ERR_NONE If no error.

MFX_ERR_NULL_PTR If surface or counter is NULL.

MFX_ERR_INVALID_HANDLE If mfxSurfaceArray->Context is invalid (for example NULL).

MFX_ERR_UNKNOWN Any internal error.

mfxFrameSurface1 **Surfaces#

The array of pointers to mfxFrameSurface1. mfxFrameSurface1 surfaces are allocated by the same agent who allocates mfxSurfaceArray.

mfxU32 NumSurfaces#

The size of array of pointers to mfxFrameSurface1.

mfxVideoChannelParam#

struct mfxVideoChannelParam#

The structure is used for VPP channels initialization in Decode_VPP component.

Public Members

mfxFrameInfo VPP#

The configuration parameters of VPP filters per each channel.

mfxU16 Protected#

Specifies the content protection mechanism.

mfxU16 IOPattern#

Output memory access types for SDK functions.

mfxExtBuffer **ExtParam#

Points to an array of pointers to the extra configuration structures; see the ExtendedBufferID enumerator for a list of extended configurations.

mfxU16 NumExtParam#

The number of extra configuration structures attached to the structure.

mfxExtInCrops#

struct mfxExtInCrops#

The structure contains crop parameters which applied by Decode_VPP component to input surfaces before video processing operation. It is used for letterboxing operations.

Public Members

mfxRect Crops#

Extension buffer header. BufferId must be equal to MFX_EXTBUFF_CROPS. Crops parameters for letterboxing operations.