Dispatcher API Structure Reference#

API#

mfxDecoderDescription#

struct mfxDecoderDescription#

The mfxDecoderDescription structure represents the description of a decoder.

Public Members

mfxStructVersion Version#

Version of the structure.

mfxU16 reserved[7]#

Reserved for future use.

mfxU16 NumCodecs#

Number of supported decoders.

struct mfxDecoderDescription::decoder *Codecs#

Pointer to the array of decoders.

struct decoder#

This structure represents the decoder description.

Public Members

mfxU32 CodecID#

Decoder ID in FourCC format.

mfxU16 reserved[8]#

Reserved for future use.

mfxU16 MaxcodecLevel#

Maximum supported codec level. See the CodecProfile enumerator for possible values.

mfxU16 NumProfiles#

Number of supported profiles.

struct mfxDecoderDescription::decoder::decprofile *Profiles#

Pointer to the array of profiles supported by the codec.

struct decprofile#

This structure represents the codec profile description.

Public Members

mfxU32 Profile#

Profile ID. See the CodecProfile enumerator for possible values.

mfxU16 reserved[7]#

Reserved for future use.

mfxU16 NumMemTypes#

Number of supported memory types.

struct mfxDecoderDescription::decoder::decprofile::decmemdesc *MemDesc#

Pointer to the array of memory types.

struct decmemdesc#

This structure represents the underlying details of the memory type.

Public Members

mfxResourceType MemHandleType#

Memory handle type.

mfxRange32U Width#

Range of supported image widths.

mfxRange32U Height#

Range of supported image heights.

mfxU16 reserved[7]#

Reserved for future use.

mfxU16 NumColorFormats#

Number of supported output color formats.

mfxU32 *ColorFormats#

Pointer to the array of supported output color formats (in FOURCC).

mfxDeviceDescription#

struct mfxDeviceDescription#

This structure represents device description.

Public Members

mfxStructVersion Version#

Version of the structure.

mfxU16 reserved[6]#

reserved for future use.

mfxU16 MediaAdapterType#

Graphics adapter type. See the mfxMediaAdapterType enumerator for a list of possible values.

mfxChar DeviceID[MFX_STRFIELD_LEN]#

Null terminated string with device ID.

mfxU16 NumSubDevices#

Number of available uniform sub-devices. Pure software implementation can report 0.

struct mfxDeviceDescription::subdevices *SubDevices#

Pointer to the array of available sub-devices.

struct subdevices#

This structure represents sub-device description.

Public Members

mfxU32 Index#

Index of the sub-device, started from 0 and increased by 1.

mfxChar SubDeviceID[MFX_STRFIELD_LEN]#

Null terminated string with unique sub-device ID, mapped to the system ID.

mfxU32 reserved[7]#

reserved for future use.

mfxEncoderDescription#

struct mfxEncoderDescription#

This structure represents an encoder description.

Public Members

mfxStructVersion Version#

Version of the structure.

mfxU16 reserved[7]#

Reserved for future use.

mfxU16 NumCodecs#

Number of supported encoders.

struct mfxEncoderDescription::encoder *Codecs#

Pointer to the array of encoders.

struct encoder#

This structure represents encoder description.

Public Members

mfxU32 CodecID#

Encoder ID in FourCC format.

mfxU16 MaxcodecLevel#

Maximum supported codec level. See the CodecProfile enumerator for possible values.

mfxU16 BiDirectionalPrediction#

Indicates B-frames support.

mfxU16 ReportedStats#

Indicates what type of statistics can be reported: block/slice/tile/frame.

mfxU16 reserved[6]#

Reserved for future use.

mfxU16 NumProfiles#

Number of supported profiles.

struct mfxEncoderDescription::encoder::encprofile *Profiles#

Pointer to the array of profiles supported by the codec.

struct encprofile#

This structure represents the codec profile description.

Public Members

mfxU32 Profile#

Profile ID. See the CodecProfile enumerator for possible values.

mfxU16 reserved[7]#

Reserved for future use.

mfxU16 NumMemTypes#

Number of supported memory types.

struct mfxEncoderDescription::encoder::encprofile::encmemdesc *MemDesc#

Pointer to the array of memory types.

struct encmemdesc#

This structure represents the underlying details of the memory type.

Public Members

mfxResourceType MemHandleType#

Memory handle type.

mfxRange32U Width#

Range of supported image widths.

mfxRange32U Height#

Range of supported image heights.

mfxU16 reserved[7]#

Reserved for future use.

mfxU16 NumColorFormats#

Number of supported input color formats.

mfxU32 *ColorFormats#

Pointer to the array of supported input color formats (in FOURCC).

mfxImplDescription#

struct mfxImplDescription#

This structure represents the implementation description.

Public Members

mfxStructVersion Version#

Version of the structure.

mfxImplType Impl#

Impl type: software/hardware.

mfxAccelerationMode AccelerationMode#

Default Hardware acceleration stack to use. OS dependent parameter. Use VA for Linux* and DX* for Windows*.

mfxVersion ApiVersion#

Supported API version.

mfxChar ImplName[MFX_IMPL_NAME_LEN]#

Null-terminated string with implementation name given by vendor.

mfxChar License[MFX_STRFIELD_LEN]#

Null-terminated string with comma-separated list of license names of the implementation.

mfxChar Keywords[MFX_STRFIELD_LEN]#

Null-terminated string with comma-separated list of keywords specific to this implementation that dispatcher can search for.

mfxU32 VendorID#

Standard vendor ID 0x8086 - Intel.

mfxU32 VendorImplID#

Vendor specific number with given implementation ID.

mfxDeviceDescription Dev#

Supported device.

mfxDecoderDescription Dec#

Decoder configuration.

mfxEncoderDescription Enc#

Encoder configuration.

mfxVPPDescription VPP#

VPP configuration.

mfxAccelerationModeDescription AccelerationModeDescription#

Supported acceleration modes.

mfxPoolPolicyDescription PoolPolicies#

Supported surface pool polices.

mfxU32 reserved[8]#

Reserved for future use.

mfxU32 NumExtParam#

Number of extension buffers. Reserved for future use. Must be 0.

mfxExtBuffer **ExtParam#

Array of extension buffers.

mfxU64 Reserved2#

Reserved for future use.

union mfxImplDescription::[anonymous] ExtParams#

Extension buffers. Reserved for future.

mfxVariant#

struct mfxVariant#

The mfxVariantType enumerator data types for mfxVariant type.

Public Members

mfxStructVersion Version#

Version of the structure.

mfxVariantType Type#

Value type.

union mfxVariant::data Data#

Value data member.

union data#

Value data holder.

Public Members

mfxU8 U8#

mfxU8 data.

mfxI8 I8#

mfxI8 data.

mfxU16 U16#

mfxU16 data.

mfxI16 I16#

mfxI16 data.

mfxU32 U32#

mfxU32 data.

mfxI32 I32#

mfxI32 data.

mfxU64 U64#

mfxU64 data.

mfxI64 I64#

mfxI64 data.

mfxF32 F32#

mfxF32 data.

mfxF64 F64#

mfxF64 data.

mfxHDL Ptr#

Pointer. When this points to a string the string must be null terminated.

enum mfxVariantType#

The mfxVariantType enumerator data types for mfxVariantType.

Values:

enumerator MFX_VARIANT_TYPE_UNSET#

Undefined type.

enumerator MFX_VARIANT_TYPE_U8#

8-bit unsigned integer.

enumerator MFX_VARIANT_TYPE_I8#

8-bit signed integer.

enumerator MFX_VARIANT_TYPE_U16#

16-bit unsigned integer.

enumerator MFX_VARIANT_TYPE_I16#

16-bit signed integer.

enumerator MFX_VARIANT_TYPE_U32#

32-bit unsigned integer.

enumerator MFX_VARIANT_TYPE_I32#

32-bit signed integer.

enumerator MFX_VARIANT_TYPE_U64#

64-bit unsigned integer.

enumerator MFX_VARIANT_TYPE_I64#

64-bit signed integer.

enumerator MFX_VARIANT_TYPE_F32#

32-bit single precision floating point.

enumerator MFX_VARIANT_TYPE_F64#

64-bit double precision floating point.

enumerator MFX_VARIANT_TYPE_PTR#

Generic type pointer.

mfxVPPDescription#

struct mfxVPPDescription#

This structure represents VPP description.

Public Members

mfxStructVersion Version#

Version of the structure.

mfxU16 reserved[7]#

Reserved for future use.

mfxU16 NumFilters#

Number of supported VPP filters.

struct mfxVPPDescription::filter *Filters#

Pointer to the array of supported filters.

struct filter#

This structure represents the VPP filters description.

Public Members

mfxU32 FilterFourCC#

Filter ID in FourCC format.

mfxU16 MaxDelayInFrames#

Introduced output delay in frames.

mfxU16 reserved[7]#

Reserved for future use.

mfxU16 NumMemTypes#

Number of supported memory types.

struct mfxVPPDescription::filter::memdesc *MemDesc#

Pointer to the array of memory types.

struct memdesc#

This structure represents the underlying details of the memory type.

Public Members

mfxResourceType MemHandleType#

Memory handle type.

mfxRange32U Width#

Range of supported image widths.

mfxRange32U Height#

Range of supported image heights.

mfxU16 reserved[7]#

Reserved for future use.

mfxU16 NumInFormats#

Number of supported input color formats.

struct mfxVPPDescription::filter::memdesc::format *Formats#

Pointer to the array of supported formats.

struct format#

This structure represents the input color format description.

Public Members

mfxU32 InFormat#

Input color in FourCC format.

mfxU16 reserved[5]#

Reserved for future use.

mfxU16 NumOutFormat#

Number of supported output color formats.

mfxU32 *OutFormats#

Pointer to the array of supported output color formats (in FOURCC).

mfxAccelerationModeDescription#

struct mfxAccelerationModeDescription#

This structure represents acceleration modes description.

Public Members

mfxStructVersion Version#

Version of the structure.

mfxU16 reserved[2]#

reserved for future use.

mfxU16 NumAccelerationModes#

Number of supported acceleration modes.

mfxAccelerationMode *Mode#

Pointer to the array of supported acceleration modes.

mfxImplementedFunctions#

struct mfxImplementedFunctions#

This structure represents the list of names of implemented functions.

Public Members

mfxU16 NumFunctions#

Number of function names in the FunctionsName array.

mfxChar **FunctionsName#

Array of the null-terminated strings. Each string contains name of the implemented function.

mfxExtendedDeviceId#

struct mfxExtendedDeviceId#

Specifies variouse physical device properties for device matching and identification outside of oneVPL.

Public Members

mfxStructVersion Version#

Version of the structure.

mfxU16 VendorID#

PCI vendor ID.

mfxU16 DeviceID#

PCI device ID.

mfxU32 PCIDomain#

PCI bus domain. Equals to ‘0’ if OS doesn’t support it or has sequential numbering of buses accross domains.

mfxU32 PCIBus#

The number of the bus that the physical device is located on.

mfxU32 PCIDevice#

The index of the physical device on the bus.

mfxU32 PCIFunction#

The function number of the device on the physical device.

mfxU8 DeviceLUID[8]#

LUID of DXGI adapter.

mfxU32 LUIDDeviceNodeMask#

Bitfield identifying the node within a linked device adapter corresponding to the device.

mfxU32 LUIDValid#

Boolean value that will be 1 if DeviceLUID contains a valid LUID and LUIDDeviceNodeMask contains a valid node mask, and 0 if they do not.

mfxU32 DRMRenderNodeNum#

Number of the DRM render node from the path /dev/dri/RenderD<num>. Value equals to 0 means that this field doesn’t contain valid DRM Render Node number.

mfxU32 DRMPrimaryNodeNum#

Number of the DRM primary node from the path /dev/dri/card<num>. Value equals to 0x7FFFFFFF means that this field doesn’t contain valid DRM Primary Node number.

mfxU8 reserved1[20]#

Reserved for future use.

mfxChar DeviceName[MFX_STRFIELD_LEN]#

Null-terminated string in utf-8 with the name of the device.

mfxPoolPolicyDescription#

struct mfxPoolPolicyDescription#

This structure represents pool policy description.

Public Members

mfxStructVersion Version#

Version of the structure.

mfxU16 reserved[2]#

reserved for future use.

mfxU16 NumPoolPolicies#

Number of supported pool policies.

mfxPoolAllocationPolicy *Policy#

Pointer to the array of supported pool policies.