以下是该结构体的定义:
typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_HEAP_SIZE {
UINT NodeIndex;
D3D12_VIDEO_ENCODER_CODEC Codec;
DXGI_RATIONAL FrameRate;
DXGI_RATIONAL BitRate;
UINT Width;
UINT Height;
DXGI_FORMAT Format;
UINT EncoderProfile;
D3D12_VIDEO_ENCODER_LEVEL_CODEC_LEVEL Level;
D3D12_VIDEO_ENCODER_ENCODE_CONTROL_FLAGS EncodeControlFlags;
D3D12_FEATURE_DATA_VIDEO_ENCODER_HEAP_SIZE_FLAGS Flags;
UINT64 Size;
} D3D12_FEATURE_DATA_VIDEO_ENCODER_HEAP_SIZE;
各个字段的含义如下:
- NodeIndex: 用于指定 GPU 节点的索引。
- Codec: 指定视频编码器使用的编解码器。
- FrameRate: 指定视频帧率。
- BitRate: 指定视频比特率。
- Width 和 Height: 指定视频的宽度和高度。
- Format: 指定视频的格式。
- EncoderProfile: 指定视频编码器的配置文件。
- Level: 指定视频编码器的级别。
- EncodeControlFlags: 指定视频编码器的控制标志。
- Flags: 指定额外的标志。
- Size: 输出参数,返回视频编码器堆的大小。
通过填充这个结构体,并调用 ID3D12Device::CheckFeatureSupport 函数,可以查询支持的视频编码器堆的大小。
转载请注明出处:http://www.zyzy.cn/article/detail/26183/Win32 API/D3d12video.h/D3D12_FEATURE_DATA_VIDEO_ENCODER_HEAP_SIZE