Edit

D3D12_VIDEO_ENCODER_INPUT_MAP_DATA_MOTION_VECTORS structure (d3d12video.h)

Contains motion vectors input map data for the GPU texture input path of ID3D12VideoEncodeCommandList4::ResolveInputParamLayout.

Syntax

typedef struct D3D12_VIDEO_ENCODER_INPUT_MAP_DATA_MOTION_VECTORS {
  D3D12_VIDEO_ENCODER_FRAME_MOTION_SEARCH_MODE_CONFIG   MotionSearchModeConfiguration;
  UINT                                                  NumHintsPerPixel;
  ID3D12Resource                                        **ppMotionVectorMaps;
  UINT                                                  *pMotionVectorMapsSubresources;
  ID3D12Resource                                        **ppMotionVectorMapsMetadata;
  UINT                                                  *pMotionVectorMapsMetadataSubresources;
  D3D12_VIDEO_ENCODER_FRAME_INPUT_MOTION_UNIT_PRECISION MotionUnitPrecision;
  D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA1       PictureControlConfiguration;
} D3D12_VIDEO_ENCODER_INPUT_MAP_DATA_MOTION_VECTORS;

Members

MotionSearchModeConfiguration

A D3D12_VIDEO_ENCODER_FRAME_MOTION_SEARCH_MODE_CONFIG specifying how the motion input vectors will be used.

NumHintsPerPixel

Number of motion vector hint maps. Each map provides an additional motion vector hint for each (x, y) pixel position.

ppMotionVectorMaps

Pointer to an array of ID3D12Resource textures. Each texture in ppMotionVectorMaps[i] represents the i-th motion vector hint for each (x, y) pixel position. The dimension must match the input texture frame. Each element is DXGI_FORMAT_R16G16_SINT where R16 is the horizontal component and G16 is the vertical component.

pMotionVectorMapsSubresources

Subresource indices for when ppMotionVectorMaps is a texture array. NULL otherwise.

ppMotionVectorMapsMetadata

Pointer to an array of ID3D12Resource textures. Each texture in ppMotionVectorMapsMetadata[i] represents the metadata for the i-th motion vector hint. Each element is DXGI_FORMAT_R8_UINT where R8 holds the reference frame index in the DPB. A value of 255 indicates the motion vector must be ignored by the driver.

pMotionVectorMapsMetadataSubresources

Subresource indices for when ppMotionVectorMapsMetadata is a texture array. NULL otherwise.

MotionUnitPrecision

A D3D12_VIDEO_ENCODER_FRAME_INPUT_MOTION_UNIT_PRECISION defining the numerical unit used in the motion vector values.

PictureControlConfiguration

A D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA providing information to the driver about picture control associated with the frame that will be encoded with this motion info, such as reference lists and reordering depending on the codec.

Requirements

Requirement Value
Header d3d12video.h