Edit

ID3D12VideoEncodeCommandList4::EncodeFrame1 method (d3d12video.h)

Encodes a bitstream, with support for subregion notification.

Syntax

void EncodeFrame1(
  ID3D12VideoEncoder                                      *pEncoder,
  ID3D12VideoEncoderHeap1                                 *pHeap,
  const D3D12_VIDEO_ENCODER_ENCODEFRAME_INPUT_ARGUMENTS1  *pInputArguments,
  const D3D12_VIDEO_ENCODER_ENCODEFRAME_OUTPUT_ARGUMENTS1 *pOutputArguments
);

Parameters

pEncoder

A ID3D12VideoEncoder representing the video encoder to be used for the encode operation.

pHeap

A ID3D12VideoEncoderHeap representing the video encoder heap to be used for this operation.

The encoder heap object allocation must not be released before any in-flight GPU commands that reference it finish execution.

pInputArguments

A pointer to a D3D12_VIDEO_ENCODER_ENCODEFRAME_INPUT_ARGUMENTS1 representing input arguments for the encode operation.

pOutputArguments

A pointer to a D3D12_VIDEO_ENCODER_ENCODEFRAME_OUTPUT_ARGUMENTS1 representing output arguments for the encode operation.

Return value

None

Remarks

This method extends ID3D12VideoEncodeCommandList2::EncodeFrame by accepting D3D12_VIDEO_ENCODER_ENCODEFRAME_INPUT_ARGUMENTS1 for optional metadata support and D3D12_VIDEO_ENCODER_ENCODEFRAME_OUTPUT_ARGUMENTS1 for subregion notification support.

The video encoder and video encoder heap may be used to record commands from multiple command lists, but may only be associated with one command list at a time. The application is responsible for synchronizing single accesses to the video encoder and video encoder heap at a time.

Requirements

Requirement Value
Header d3d12video.h

See also

ID3D12VideoEncodeCommandList2::EncodeFrame