D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_QVBR1_0096结构 (d3d12umddi.h)
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_QVBR1_0096 结构包含增强的 QVBR 速率控制模式的速率控制定义。
语法
typedef struct D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_QVBR1_0096 {
UINT InitialQP;
UINT MinQP;
UINT MaxQP;
UINT64 MaxFrameBitSize;
UINT64 TargetAvgBitRate;
UINT64 PeakBitRate;
UINT ConstantQualityTarget;
UINT64 VBVCapacity;
UINT64 InitialVBVFullness;
UINT QualityVsSpeed;
} D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_QVBR1_0096;
成员
InitialQP
设置 D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_INITIAL_QP 标志后,速率控制算法可以使用 InitialQP。
MinQP
设置 D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_QP_RANGE 标志时,MinQP 限制速率控制算法的量化参数 (QP) 范围。
MaxQP
设置 D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_QP_RANGE 标志后,MaxQP 限制速率控制算法的 QP 范围。
MaxFrameBitSize
要编码的每个帧的最大大小(以位为单位)。 设置 D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_MAX_FRAME_SIZE 时,MaxFrameBitSize 限制速率控制算法中每个帧的最大大小。
TargetAvgBitRate
要使用的平均比特率(以每秒位数为单位)。
PeakBitRate
可以达到的最大比特率(以每秒位为单位)。
ConstantQualityTarget
指示质量级别。 值特定于编解码器,因为每个标准都定义了此参数的范围(例如 H.264/ HEVC 0-51 等)。
VBVCapacity
视频缓冲验证程序(VBV)缓冲区容量(以位为单位)。
InitialVBVFullness
VBV 缓冲区的初始完整度(以位为单位)。
QualityVsSpeed
质量与速度权衡。 此值必须位于 [0, D3D12_FEATURE_DATA_VIDEO_ENCODER_SUPPORT1范围内。MaxQualityVsSpeed]。 值越低,编码作越快。
与 QualityVsSpeed 公开的每个级别关联的设置只能引用与特定编解码器配置或编码工具选择无关的硬件/驱动程序实现优化和启发式,这些配置或编码工具在 D3D12 API 中单独向用户公开。 请注意,通过此 API 公开的其他编解码器配置和编解码器编码工具也可能会影响质量和速度。
言论
有关详细信息,请参阅 D3D12 AV1 视频编码。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows 11 版本 24H2 (WDDM 3.2) |
标头 | d3d12umddi.h |
另请参阅
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CONFIGURATION_PARAMS_0080_2