ID3D11VideoContext3::D ecoderBeginFrame1 方法 (d3d11_4.h)
启动解码操作以解码视频帧。
语法
HRESULT DecoderBeginFrame1(
ID3D11VideoDecoder *pDecoder,
ID3D11VideoDecoderOutputView *pView,
UINT ContentKeySize,
const void *pContentKey,
UINT NumComponentHistograms,
const UINT *pHistogramOffsets,
ID3D11Buffer * const *ppHistogramBuffers
);
参数
pDecoder
指向 ID3D11VideoDecoder 接口的 指针。 若要获取此指针,请调用 ID3D11VideoDevice::CreateVideoDecoder
pView
指向 ID3D11VideoDecoderOutputView 接口的 指针。 此接口描述将接收解码帧的资源。 若要获取此指针,请调用 ID3D11VideoDevice::CreateVideoDecoderOutputView。
ContentKeySize
在 pContentKey 中指定的内容密钥的大小。 如果 pContentKey 为 NULL,请将 ContentKeySize 设置为零。
pContentKey
指向用于加密帧数据的内容密钥的可选指针。 如果未使用任何内容密钥,请将此参数设置为 NULL。 如果调用方提供内容密钥,则调用方必须使用会话密钥来加密内容密钥。
NumComponentHistograms
要为其记录直方图的分量数。 使用 D3D11_FEATURE_VIDEO_DECODE_HISTOGRAM 检查以获取支持。 未录制直方图或不支持该功能时,请使用零。 指定比格式少的组件意味着这些组件未启用直方图记录。 最大组件数定义为 D3D11_4_VIDEO_DECODER_MAX_HISTOGRAM_COMPONENTS。
pHistogramOffsets
ppHistogramBuffers 并行数组中的起始缓冲区偏移位置数组。 使用 D3D11_VIDEO_DECODE_HISTOGRAM_COMPONENT 为数组编制索引。 如果未请求组件,请将偏移量指定为零。 偏移量必须对齐 256 字节。
ppHistogramBuffers
用于编写组件直方图的硬件的目标缓冲区数组。 使用 D3D11_VIDEO_DECODE_HISTOGRAM_COMPONENT 为数组编制索引。 禁用或不支持组件直方图时,将此参数设置为 nullptr
返回值
如果成功,则返回 S_OK 。
注解
为视频解码直方图分配资源时,允许使用以下 D3D11_RESOURCE_MISC 标志。
- D3D11_RESOURCE_MISC_SHARED
- D3D11_RESOURCE_MISC_DRAWINDIRECT_ARGS
- D3D11_RESOURCE_MISC_BUFFER_ALLOW_RAW_VIEWS
- D3D11_RESOURCE_MISC_BUFFER_STRUCTURED
- D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX
- D3D11_RESOURCE_MISC_SHARED_NTHANDLE
- D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE
- D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE_DRIVER
不允许所有其他D3D11_RESOURCE_MISC标志。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 10内部版本 20348 |
最低受支持的服务器 | Windows 10内部版本 20348 |
标头 | d3d11_4.h |