D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAGS_0080 枚举 (d3d12umddi.h)
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAGS_0080 枚举指定速率控制的标志。
语法
typedef enum D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAGS_0080 {
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_NONE = 0x0,
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_DELTA_QP = 0x1,
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_FRAME_ANALYSIS = 0x2,
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_QP_RANGE = 0x4,
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_INITIAL_QP = 0x8,
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_MAX_FRAME_SIZE = 0x10,
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_1_ENABLE_VBV_SIZES = 0x20,
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0096_ENABLE_EXTENSION1_SUPPORT = 0x40,
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0096_ENABLE_QUALITY_VS_SPEED = 0x80
} ;
常量
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_NONE 值: 0x0 无速率控制标志。 |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_DELTA_QP 值: 0x1 如果所选速率控制模式 D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_ABSOLUTE_QP_MAP,则此标志无效,因为 pRateControlQPMap 字段中的 QP 值用作绝对 QP 值。 对于其他速率控制模式,此标志允许 将 pRateControlQPMap 解释为要用于当前 帧编码操作的增量 QP 映射。 映射中提供的值在由速率控制算法或 CQP 模式下设置的基线 QP 常量决定的 QP 值的基础上递增/递减。 将增量 QP 调整与某些活动速率控制模式结合使用可能会违反比特率约束,因为它会显式更改由速率控制预算算法选择的 QP 值。 |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_FRAME_ANALYSIS 值: 0x2 如果 D3D12DDI_VIDEO_ENCODER_SUPPORT_FLAGS中指示支持,则此标志允许速率控制算法根据在第一次传递上执行帧分析收集的统计信息选择 QP 值,从而优化比特率使用。 |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_QP_RANGE 值: 0x4 设置后,使用 MinQp 和 MaxQp 值作为速率控制算法的范围。 |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_INITIAL_QP 值: 0x8 设置后,使用 InitialQP 值作为速率控制算法的范围。 |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_MAX_FRAME_SIZE 值: 0x10 支持 D3D12DDI_VIDEO_ENCODER_SUPPORT_FLAG_0083_0_RATE_CONTROL_MAX_FRAME_SIZE_AVAILABLE 时,速率控制算法应将每帧的最大大小限制为速率控制配置中的指定参数。 |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_1_ENABLE_VBV_SIZES 值: 0x20 设置后,启用 VBVCapacity 和 InitialVBVFullness 的使用。 |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0096_ENABLE_EXTENSION1_SUPPORT 值: 0x40 需要设置 D3D12DDI_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_EXTENSION1_SUPPORT 。 请参阅“备注”。 |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0096_ENABLE_QUALITY_VS_SPEED 值: 0x80 需要 D3D12DDI_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_EXTENSION1_SUPPORT 和 D3D12DDI_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_QUALITY_VS_SPEED_AVAILABLE。 启用后,指示在速率控制结构中使用 QualityVsSpeed 。 |
注解
启用 D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0096_ENABLE_EXTENSION1_SUPPORT 后,这表示将在 D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CONFIGURATION_PARAMS.pConfiguration_Xxx 中使用为 AV1 编码扩展的速率控制结构,如下表所示。
启用标志时的速率控制模式 | D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CONFIGURATION_PARAMS类型 | D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CONFIGURATION_PARAMS DataSize |
---|---|---|
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_ABSOLUTE_QP_MAP | D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_ABSOLUTE_QP_MAP | sizeof (D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_ABSOLUTE_QP_MAP) |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_CQP | D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CQP1 | sizeof (D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CQP1) |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_CBR | D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CBR1 | sizeof (D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CBR1) |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_VBR | D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_VBR1 | sizeof (D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_VBR1) |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_QVBR | D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_QVBR1 | sizeof (D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_QVBR1) |
否则,禁用时将使用旧结构,如下表所示。
禁用标志时的速率控制模式 | D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CONFIGURATION_PARAMS类型 | D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CONFIGURATION_PARAMS DataSize |
---|---|---|
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_ABSOLUTE_QP_MAP | Null | 0 |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_CQP | D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CQP | sizeof (D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CQP) |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_CBR | D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CBR | sizeof (D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CBR) |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_VBR | D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_VBR | sizeof (D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_VBR) |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_QVBR | D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_QVBR | sizeof (D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_QVBR) |
有关常规信息,请参阅 D3D12 视频编码 。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 11 (WDDM 3.0) |
标头 | d3d12umddi.h |
另请参阅
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_0080_2
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CBR_0080
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_QVBR_0080_2
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_VBR_0080