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 (*Release) function. (*AddRef) should be used each time a new link to the surface is created (for example, copy structure) for proper surface management.
- Return
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.
- Parameters
[in] surface
: Valid mfxSurfaceArray.
-
mfxStatus (*
Release
)(struct mfxSurfaceArray *surface_array)¶ Decrements the internal reference counter of the surface. (*Release) should be called after using the (*AddRef) function to add a surface or when allocation logic requires it.
- Return
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.
- Parameters
[in] surface_array
: Valid mfxSurfaceArray.
-
mfxStatus (*
GetRefCounter
)(struct mfxSurfaceArray *surface_array, mfxU32 *counter)¶ Returns current reference counter of mfxSurfaceArray structure.
- Return
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.
- Parameters
[in] surface
: Valid surface_array.[out] counter
: Sets counter to the current reference counter value.
-
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.
-
mfxHDL
mfxVideoChannelParam¶
-
struct
mfxVideoChannelParam
¶ The structure is used for VPP channels initializtion in Decode_VPP component.
Public Members
-
mfxFrameInfo
VPP
¶ The configuration parameters of VPP filters per each channel.
-
mfxExtBuffer **
ExtParam
¶ Points to an array of pointers to the extra configuration structures; see the ExtendedBufferID enumerator for a list of extended configurations.
-
mfxFrameInfo
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.