D3D12_VIDEO_ENCODER_SUPPORT_FLAGS 枚举 (d3d12video.h)
指定视频编码器功能的标志。
语法
typedef enum D3D12_VIDEO_ENCODER_SUPPORT_FLAGS {
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_NONE,
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_GENERAL_SUPPORT_OK,
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_RECONFIGURATION_AVAILABLE,
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RESOLUTION_RECONFIGURATION_AVAILABLE,
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_VBV_SIZE_CONFIG_AVAILABLE,
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_FRAME_ANALYSIS_AVAILABLE,
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RECONSTRUCTED_FRAMES_REQUIRE_TEXTURE_ARRAYS,
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_DELTA_QP_AVAILABLE,
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_SUBREGION_LAYOUT_RECONFIGURATION_AVAILABLE,
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_ADJUSTABLE_QP_RANGE_AVAILABLE,
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_INITIAL_QP_AVAILABLE,
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_MAX_FRAME_SIZE_AVAILABLE,
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_SEQUENCE_GOP_RECONFIGURATION_AVAILABLE,
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_MOTION_ESTIMATION_PRECISION_MODE_LIMIT_AVAILABLE,
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_EXTENSION1_SUPPORT,
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_QUALITY_VS_SPEED_AVAILABLE
} ;
常量
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_NONE 无。 |
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_GENERAL_SUPPORT_OK 指示编码器是否将给定配置与标志的其余部分结合使用来传达某些限制或没有常规支持。 Direct3D 12 调试层可以提供更多信息。 |
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_RECONFIGURATION_AVAILABLE 支持在编码会话中间更改速率控制。 |
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RESOLUTION_RECONFIGURATION_AVAILABLE 支持在编码会话中更改分辨率。 |
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_VBV_SIZE_CONFIG_AVAILABLE 支持为速率控制算法配置 VBV 初始完整度和容量。 |
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_FRAME_ANALYSIS_AVAILABLE 支持涉及帧分析的速率控制模式,以降低性能为代价优化比特率使用。 |
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RECONSTRUCTED_FRAMES_REQUIRE_TEXTURE_ARRAYS 设置此标志后,引用已重建图片的纹理只能作为纹理数组进行引用,而不能引用每个资源数组大小为 1 的单独纹理 2D 资源数组。 如果不需要此功能,则主机具有更大的灵活性。 这一点对于分辨率频繁更改且需要为一个IDR帧刷新 DPB 的方案非常重要,因为纹理数组只能作为单个单元进行分配和解除分配,但可以单独分配和解除分配单独的纹理 2D 资源。 |
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_DELTA_QP_AVAILABLE 支持速率控制中的 Delta QP 使用情况 |
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_SUBREGION_LAYOUT_RECONFIGURATION_AVAILABLE 支持编码会话期间的动态子区域布局更改。 |
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_ADJUSTABLE_QP_RANGE_AVAILABLE 支持速率控制中的可调整 QP 范围。 |
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_INITIAL_QP_AVAILABLE 支持速率控制中可调整的初始 QP。 |
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_MAX_FRAME_SIZE_AVAILABLE 支持为每个编码帧设置比特率算法的最大上限。 |
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_SEQUENCE_GOP_RECONFIGURATION_AVAILABLE 在编码会话期间支持动态 GOP 更改。 |
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_MOTION_ESTIMATION_PRECISION_MODE_LIMIT_AVAILABLE 支持调用方限制用于帧编码的运动搜索的精度。 |
注解
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_GENERAL_SUPPORT_OK指示是否有一般支持。 其余标志可以组合在一起以传达进一步的信息。
一般支持始终预期。
- 支持使用 D3D12_MEMORY_POOL_L0 分配所有缓冲区。 这始终是系统内存,但仍是 D3D12 缓冲区。
- 支持使用 D3D12_MEMORY_POOL_L1) (默认池)分配的所有缓冲区,包括使用 D3D12_CPU_PAGE_PROPERTY_NOT_AVAILABLE 分配的缓冲区。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 内部版本 22000 |
最低受支持的服务器 | Windows 内部版本 22000 |
标头 | d3d12video.h |