Win32 API:ID3D11CryptoSession 接口(D3d11.h)
在 Win32 API 的 Direct3D 11 中,ID3D11CryptoSession 接口用于表示加密会话。这个接口主要用于支持数字版权管理(Digital Rights Management,DRM)和保护受版权保护的内容。以下是 ID3D11CryptoSession 接口的定义:DECLARE_INTERFACE_(ID3D11CryptoSession, ID3D11DeviceChild){ STDMETHOD(GetCryptoType)(THIS_ GUID* pCryptoType) PURE; STDMETHOD(DecodeFrame)(THIS_ ID3D11AuthenticatedChannel* pAuthenticatedChannel, const void* pData, UINT DataSize, ID3D11CryptoSession *pDecoderOutput, UINT *pOutputSize) PURE; STDMETHOD(EncryptionBlt)(THIS_ ID3D11CryptoSession ...
Win32 API:ID3D11Counter 接口(D3d11.h)
在 Win32 API 的 Direct3D 11 中,ID3D11Counter 接口用于表示性能计数器。性能计数器可用于测量 GPU 的性能和其他相关指标,帮助开发者进行性能优化。以下是 ID3D11Counter 接口的定义:DECLARE_INTERFACE_(ID3D11Counter, ID3D11DeviceChild){ STDMETHOD(GetDesc)(THIS_ D3D11_COUNTER_DESC *pDesc) PURE;};ID3D11Counter 接口派生自 ID3D11DeviceChild 接口,并提供了一个成员函数: GetDesc 方法:获取性能计数器的描述信息,返回一个 D3D11_COUNTER_DESC 结构体,该结构体包含性能计数器的详细信息。D3D11_COUNTER_DESC 结构体定义如下:typedef struct D3D11_COUNTER_DESC { D3D11_COUNTER Counter; UINT MiscellaneousFlags;} D3D11_COUNTER_DESC;其中,Counte...
Win32 API:ID3D11ComputeShader 接口(D3d11.h)
在 Win32 API 的 Direct3D 11 中,ID3D11ComputeShader 接口用于表示计算着色器。计算着色器是一种在 GPU 上执行通用计算任务的着色器类型。以下是 ID3D11ComputeShader 接口的定义:DECLARE_INTERFACE_(ID3D11ComputeShader, ID3D11DeviceChild){ STDMETHOD_(void, GetDevice)(THIS_ ID3D11Device **ppDevice) PURE;};ID3D11ComputeShader 接口派生自 ID3D11DeviceChild 接口,并提供了一个成员函数: GetDevice 方法:获取与当前计算着色器关联的设备对象。计算着色器是一种通过 HLSL(High Level Shading Language)编写的着色器程序,用于在 GPU 上执行通用计算任务,而不仅仅是图形渲染。通过 ID3D11ComputeShader 接口,应用程序可以创建、配置和使用计算着色器,以便进行并行计算和通用GPU计算。这对于一些科学计算、模拟和其他需要...
Win32 API:ID3D11CommandList 接口(D3d11.h)
在 Win32 API 的 Direct3D 11 中,ID3D11CommandList 接口用于表示命令列表。命令列表是一系列的图形和计算命令,它们可以在 GPU 上执行。以下是 ID3D11CommandList 接口的定义:DECLARE_INTERFACE_(ID3D11CommandList, ID3D11DeviceChild){ STDMETHOD_(void, GetContextFlags)(THIS_ UINT *pContextFlags) PURE;};ID3D11CommandList 接口派生自 ID3D11DeviceChild 接口,并提供了一个成员函数: GetContextFlags 方法:获取与当前命令列表关联的上下文标志。命令列表通常由应用程序在 CPU 上创建,然后通过 ID3D11DeviceContext::ExecuteCommandList 函数在 GPU 上执行。命令列表包含了一系列的渲染命令、资源绑定以及其他与 GPU 相关的操作。使用命令列表可以提高多线程性能,因为应用程序可以在一个线程上准备命令列表,然后在另一个线程上提...
Win32 API:ID3D11ClassLinkage 接口(D3d11.h)
在 Win32 API 的 Direct3D 11 中,ID3D11ClassLinkage 接口用于表示着色器类的链接器。这个接口用于管理和链接着色器类,支持一些高级的着色器编程结构,如类和对象。以下是 ID3D11ClassLinkage 接口的定义:DECLARE_INTERFACE_(ID3D11ClassLinkage, IUnknown){ STDMETHOD(CreateClassInstance)(THIS_ LPCSTR pClassTypeName, UINT ConstantBufferOffset, UINT ConstantVectorOffset, UINT TextureOffset, UINT SamplerOffset, ID3D11ClassInstance **ppInstance) PURE; STDMETHOD(GetClassInstance)(THIS_ LPCSTR pClassInstanceName, UINT InstanceIndex, ID3D11ClassInstance **ppInstance) PURE; ...
Win32 API:ID3D11ClassInstance 接口(D3d11.h)
在 Win32 API 的 Direct3D 11 中,ID3D11ClassInstance 接口用于表示着色器类实例。这个接口通常与类链接器(class linker)一起使用,用于创建着色器类的实例。以下是 ID3D11ClassInstance 接口的定义:DECLARE_INTERFACE_(ID3D11ClassInstance, ID3D11DeviceChild){ STDMETHOD(GetClassLinkage)(THIS_ ID3D11ClassLinkage **ppLinkage) PURE; STDMETHOD_(LPCSTR, GetDesc)(THIS) PURE; STDMETHOD_(LPCSTR, GetInstanceName)(THIS) PURE; STDMETHOD_(LPCSTR, GetTypeName)(THIS) PURE;};ID3D11ClassInstance 接口派生自 ID3D11DeviceChild 接口,并提供了以下几个成员函数: GetClassLinkage 方法:获取与当前类实例关联的...
Win32 API:ID3D11Buffer 接口(D3d11.h)
在 Win32 API 的 Direct3D 11 中,ID3D11Buffer 接口用于表示缓冲区对象,该对象用于存储各种类型的数据,例如顶点数据、索引数据等。缓冲区是 GPU 和 CPU 之间进行数据交换的一种方式。以下是 ID3D11Buffer 接口的定义:DECLARE_INTERFACE_(ID3D11Buffer, ID3D11Resource){ STDMETHOD_(void, GetDesc)(THIS_ D3D11_BUFFER_DESC *pDesc) PURE;};ID3D11Buffer 接口派生自 ID3D11Resource 接口,并提供了一个成员函数: GetDesc 方法:获取缓冲区对象的描述信息,返回一个 D3D11_BUFFER_DESC 结构体,该结构体包含缓冲区的详细信息。D3D11_BUFFER_DESC 结构体定义如下:typedef struct D3D11_BUFFER_DESC { UINT ByteWidth; D3D11_USAGE Usage; UINT ...
Win32 API:ID3D11BlendState 接口(D3d11.h)
在 Win32 API 的 Direct3D 11 中,ID3D11BlendState 接口用于表示混合状态对象,该对象控制渲染目标的混合操作。混合操作允许在将新像素颜色写入渲染目标之前,将其与当前渲染目标的颜色进行混合。以下是 ID3D11BlendState 接口的定义:DECLARE_INTERFACE_(ID3D11BlendState, ID3D11DeviceChild){ STDMETHOD(GetDesc)(THIS_ D3D11_BLEND_DESC *pDesc) PURE;};ID3D11BlendState 接口派生自 ID3D11DeviceChild 接口,并提供了一个成员函数: GetDesc 方法:获取混合状态对象的描述信息,返回一个 D3D11_BLEND_DESC 结构体,该结构体包含混合状态的详细信息。D3D11_BLEND_DESC 结构体定义如下:typedef struct D3D11_BLEND_DESC { BOOL AlphaToCoverageEnable; BOOL Indepen...
Win32 API:ID3D11AuthenticatedChannel 接口(D3d11.h)
在 Win32 API 的 Direct3D 11 中,ID3D11AuthenticatedChannel 接口是用于安全通信的接口。这个接口主要用于创建和操作认证通道(Authenticated Channel),这是一种保护视频和音频数据传输安全性的机制。以下是 ID3D11AuthenticatedChannel 接口的定义:DECLARE_INTERFACE_(ID3D11AuthenticatedChannel, ID3D11DeviceChild){ STDMETHOD(GetCertificateSize)(THIS_ UINT *pCertificateSize) PURE; STDMETHOD(GetCertificate)(THIS_ UINT CertificateSize, BYTE *pCertificate) PURE; STDMETHOD(GetChannelHandle)(THIS_ HANDLE *pChannelHandle) PURE;};ID3D11AuthenticatedChannel 接口派生自 ID3D11Device...
Win32 API:ID3D11Asynchronous 接口(D3d11.h)
在 Win32 API 的 Direct3D 11 中,ID3D11Asynchronous 接口是一个用于异步查询的基础接口。异步查询通常用于检查 GPU 的操作状态、获取性能计数器或执行其他异步任务。以下是 ID3D11Asynchronous 接口的定义:DECLARE_INTERFACE_(ID3D11Asynchronous, ID3D11DeviceChild){ STDMETHOD_(UINT, GetDataSize)(THIS) PURE;};ID3D11Asynchronous 接口派生自 ID3D11DeviceChild 接口,它提供了一个成员函数 GetDataSize,该函数用于获取异步查询的数据大小。 GetDataSize 方法:获取异步查询的数据大小,返回一个 UINT 类型的值。这个接口是许多与异步操作相关的接口的基类,包括如 ID3D11Query、ID3D11Predicate 等。在使用异步查询时,你通常会首先创建一个派生自 ID3D11Asynchronous 接口的具体查询接口,然后使用这些接口来执行异步操作并获取相关的信息。
Win32 API:D3D11_VPOV_DIMENSION 枚举(D3d11.h)
在 Win32 API 的 Direct3D 11 中,D3D11_VPOV_DIMENSION 枚举用于描述视频处理输出视图(Video Processing Output View,VPOV)的维度。这个枚举定义了不同输出视图类型的维度。以下是 D3D11_VPOV_DIMENSION 枚举的定义:typedef enum D3D11_VPOV_DIMENSION { D3D11_VPOV_DIMENSION_UNKNOWN, D3D11_VPOV_DIMENSION_TEXTURE2D} D3D11_VPOV_DIMENSION;这个枚举包含两个成员:1. D3D11_VPOV_DIMENSION_UNKNOWN:表示未知维度。2. D3D11_VPOV_DIMENSION_TEXTURE2D:表示 2D 纹理维度。这些维度用于指定视频处理输出视图的类型,具体取决于你的应用程序中的需求。根据你要生成的视频数据的格式,你可以选择适当的维度。
Win32 API:D3D11_VPIV_DIMENSION 枚举(D3d11.h)
在 Win32 API 的 Direct3D 11 中,D3D11_VPIV_DIMENSION 枚举用于描述视频处理输入视图(Video Processing Input View,VPIV)的维度。这个枚举定义了不同视图类型的维度。以下是 D3D11_VPIV_DIMENSION 枚举的定义:typedef enum D3D11_VPIV_DIMENSION { D3D11_VPIV_DIMENSION_UNKNOWN, D3D11_VPIV_DIMENSION_TEXTURE2D, D3D11_VPIV_DIMENSION_TEXTURE2DARRAY} D3D11_VPIV_DIMENSION;这个枚举包含三个成员:1. D3D11_VPIV_DIMENSION_UNKNOWN:表示未知维度。2. D3D11_VPIV_DIMENSION_TEXTURE2D:表示 2D 纹理维度。3. D3D11_VPIV_DIMENSION_TEXTURE2DARRAY:表示包含数组的 2D 纹理维度。这些维度用于指定视频处理输入视图的类型,具体取决于你的应用程序中的需求。根据你要处理...
Win32 API:D3D11_VIDEO_USAGE 枚举(D3d11.h)
在Win32 API的Direct3D 11中,D3D11_VIDEO_USAGE 枚举是用于描述视频用途的枚举类型。这个枚举定义了视频处理器的使用方式。以下是 D3D11_VIDEO_USAGE 枚举的定义:typedef enum D3D11_VIDEO_USAGE { D3D11_VIDEO_USAGE_PLAYBACK_NORMAL, D3D11_VIDEO_USAGE_OPTIMAL_SPEED, D3D11_VIDEO_USAGE_OPTIMAL_QUALITY} D3D11_VIDEO_USAGE;这个枚举包含三个成员:1. D3D11_VIDEO_USAGE_PLAYBACK_NORMAL:表示视频播放的正常用途。2. D3D11_VIDEO_USAGE_OPTIMAL_SPEED:表示视频处理时追求最佳速度。3. D3D11_VIDEO_USAGE_OPTIMAL_QUALITY:表示视频处理时追求最佳质量。你可以根据你的应用场景选择适当的枚举值,以便在视频处理时获得最佳的性能或质量。这通常与硬件设备和用户需求有关。
Win32 API:D3D11_VIDEO_PROCESSOR_STEREO_FORMAT 枚举(D3d11.h)
D3D11_VIDEO_PROCESSOR_STEREO_FORMAT 枚举用于描述视频处理器在立体(stereo)3D 模式下的图像格式。在立体3D显示中,左右眼图像通常以不同的格式存储或传输,以便在合适的显示设备上创建立体效果。以下是 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT 枚举的一些可能的常见值:1. D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO: - 表示单一图像格式,不包含立体信息。D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO2. D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_HORIZONTAL: - 表示左右眼图像以水平排列的格式。D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_HORIZONTAL3. D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_VERTICAL: - 表示左右眼图像以垂直排列的格式。D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_VERT...
Win32 API:D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE 枚举(D3d11.h)
D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE 枚举用于描述视频处理器在立体(stereo)视图模式下的图像翻转方式。在立体3D显示中,左右眼图像可能需要进行翻转以适应特定的显示设备或场景。以下是 D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE 枚举的一些可能的常见值:1. D3D11_VIDEO_PROCESSOR_STEREO_FLIP_NONE: - 表示不进行图像翻转。D3D11_VIDEO_PROCESSOR_STEREO_FLIP_NONE2. D3D11_VIDEO_PROCESSOR_STEREO_FLIP_FRAME0: - 表示仅翻转第一帧。D3D11_VIDEO_PROCESSOR_STEREO_FLIP_FRAME03. D3D11_VIDEO_PROCESSOR_STEREO_FLIP_FRAME1: - 表示仅翻转第二帧。D3D11_VIDEO_PROCESSOR_STEREO_FLIP_FRAME14. D3D11_VIDEO_PROCESSOR_STEREO_FLIP_BOTH: ...
Win32 API:D3D11_VIDEO_PROCESSOR_STEREO_CAPS 枚举(D3d11.h)
D3D11_VIDEO_PROCESSOR_STEREO_CAPS 枚举用于描述视频处理器对立体(stereo)视图的支持能力。立体视图通常用于创建立体3D效果,其中左右两个眼睛分别看到稍微不同的图像,以产生深度感。以下是 D3D11_VIDEO_PROCESSOR_STEREO_CAPS 枚举的可能的常见值:1. D3D11_VIDEO_PROCESSOR_STEREO_CAPS_MONO_OFFSET: - 表示视频处理器支持单一视图的偏移,通常用于模拟立体效果。D3D11_VIDEO_PROCESSOR_STEREO_CAPS_MONO_OFFSET2. D3D11_VIDEO_PROCESSOR_STEREO_CAPS_ROW_INTERLEAVED: - 表示视频处理器支持行间隔(row interleaved)的立体视图。D3D11_VIDEO_PROCESSOR_STEREO_CAPS_ROW_INTERLEAVED3. D3D11_VIDEO_PROCESSOR_STEREO_CAPS_COLUMN_INTERLEAVED: - 表示视频处理器支持列间隔(c...
Win32 API:D3D11_VIDEO_PROCESSOR_ROTATION 枚举(D3d11.h)
D3D11_VIDEO_PROCESSOR_ROTATION 枚举用于描述视频处理器旋转图像时的旋转类型。这个枚举通常用于指定视频旋转的角度或方向。以下是 D3D11_VIDEO_PROCESSOR_ROTATION 枚举的一些常见值:1. D3D11_VIDEO_PROCESSOR_ROTATION_IDENTITY: - 表示图像没有旋转。D3D11_VIDEO_PROCESSOR_ROTATION_IDENTITY2. D3D11_VIDEO_PROCESSOR_ROTATION_90: - 表示图像顺时针旋转 90 度。D3D11_VIDEO_PROCESSOR_ROTATION_903. D3D11_VIDEO_PROCESSOR_ROTATION_180: - 表示图像顺时针旋转 180 度。D3D11_VIDEO_PROCESSOR_ROTATION_1804. D3D11_VIDEO_PROCESSOR_ROTATION_270: - 表示图像顺时针旋转 270 度。D3D11_VIDEO_PROCESSOR_ROTATION_270这些枚举值用于指定视...
Win32 API:D3D11_VIDEO_PROCESSOR_OUTPUT_RATE 枚举(D3d11.h)
D3D11_VIDEO_PROCESSOR_OUTPUT_RATE 枚举用于描述视频处理器的输出帧速率。视频处理器可以在处理视频时改变帧速率,这个枚举就用于指定视频输出的帧速率。以下是 D3D11_VIDEO_PROCESSOR_OUTPUT_RATE 枚举的一些常见值:1. D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_NORMAL: - 表示正常帧速率。D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_NORMAL2. D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_HALF: - 表示帧速率减半。D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_HALF3. D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_CUSTOM: - 表示自定义帧速率。此时需要提供自定义的帧速率值。D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_CUSTOM这些枚举值用于指定视频处理器在输出视频时的帧速率。在某些情况下,可能需要调整帧速率以满足特定的需求或匹配显示设备的帧速率。...
Win32 API:D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE 枚举(D3d11.h)
D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE 枚举用于描述视频处理器的颜色空间范围。颜色空间范围定义了图像的颜色值的范围,通常表示为标准化的 0 到 1 的范围或 16 到 235 的范围。以下是 D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE 枚举的常见值:1. D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_UNDEFINED: - 表示颜色空间范围未定义。D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_UNDEFINED2. D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_16_235: - 表示颜色空间范围为 16 到 235。D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_16_2353. D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_0_255: - 表示颜色空间范围为 0 到 255。D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_0_255这些枚举值用于指定视频处理...
Win32 API:D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT 枚举(D3d11.h)
D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT 枚举用于描述视频处理器支持的图像格式。这个枚举通常用于查询视频处理器设备对特定图像格式的支持情况。以下是一些可能的 D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT 枚举值:1. D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT_INPUT: - 表示视频处理器支持特定输入格式。D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT_INPUT2. D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT_OUTPUT: - 表示视频处理器支持特定输出格式。D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT_OUTPUT这些枚举值用于查询视频处理器对输入和输出图像格式的支持情况。你可以使用这些信息来确保你的应用程序在处理视频时使用了支持的格式,以避免不必要的错误或性能问题。要获取详细的信息和最新的枚举值,建议查阅最新版本的 Microsoft 文档或 DirectX SDK。你可以访问 Microsof...