D3D12DDIARG_CREATE_VIDEO_DECODER_HEAP_0033结构 (d3d12umddi.h)
用于为解码会话创建解码器对象。
语法
typedef struct D3D12DDIARG_CREATE_VIDEO_DECODER_HEAP_0033 {
UINT NodeMask;
D3D12DDI_VIDEO_DECODE_CONFIGURATION_0020 Configuration;
UINT DecodeWidth;
UINT DecodeHeight;
DXGI_FORMAT Format;
DXGI_RATIONAL FrameRate;
UINT BitRate;
UINT MaxDecodePictureBufferCount;
} D3D12DDIARG_CREATE_VIDEO_DECODER_HEAP_0033;
成员
NodeMask
对于单个 GPU作,请将此项设置为零。 如果有多个 GPU 节点,请设置一个位来标识命令队列应用到的节点(设备的物理适配器)。 掩码中的每个位对应于单个节点。 只能设置 1 位。
Configuration
解码配置文件和比特流加密。 请参阅D3D12DDI_VIDEO_DECODE_CONFIGURATION。
DecodeWidth
要解码的位流的解码宽度。
DecodeHeight
要解码的位流的解码高度。
Format
资源数据格式。
FrameRate
输入视频流的帧速率。
BitRate
压缩视频流的每秒数据压缩率。
MaxDecodePictureBufferCount
此流可以具有的最大解码图片缓冲区数。
言论
解码器堆保存解码会话的分配,并可能包含状态,包括引用相关数据(如运动向量)。 如果解析更改或 MaxDecodePictureBufferCount 更改,则会创建此对象的新实例。 当这些属性发生更改时,它特定于编解码器。
解码宽度和高度指定任何刻度之前的本机流分辨率。 最大解码图片缓冲区(DPB)计数指定最大 DPB 计数,无需重新创建视频解码流即可使用。
驱动程序可以使用比特率和 FrameRate 参数来告知启发法,例如中间分配大小或性能优化。
如果比特率和 FrameRate 值不足以用于视频流,则解码帧可能会失败。 如果解码失败,则查询D3D12DDI_QUERY_TYPE_VIDEO_DECODE_STATISTICS必须返回状态D3D12DDI_VIDEO_DECODE_STATUS_RATE_EXCEEDED。
比特率和 FrameRate 参数也可以设置为零。 使用这些值时,驱动程序必须做出最坏的情况假设,并且不允许D3D12DDI_VIDEO_DECODE_STATUS_RATE_EXCEEDED失败。
要求
要求 | 价值 |
---|---|
标头 | d3d12umddi.h |