Win32 API:D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION 结构(D3d12video.h)
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION 结构体是与 Direct3D 12 中的视频编码器相关的一个结构体,用于配置视频编码器的参数。以下是该结构体的定义:typedef struct D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION{ DXGI_FORMAT Format; DXGI_COLOR_SPACE_TYPE ColorSpace; D3D12_VIDEO_ENCODER_CODEC_HISTOGRAM_CONFIGURATION Histogram; D3D12_VIDEO_ENCODER_CODEC_QUANTIZATION_CONFIGURATION Quantization; D3D12_VIDEO_ENCODER_CODEC_RATE_CONTROL_CONFIGURATION RateControl;} D3D12_VIDEO_ENCODER_CODEC_CONFIG...
Win32 API:D3D12_VIDEO_ENCODE_REFERENCE_FRAMES 结构(D3d12video.h)
在 Direct3D 12 中,D3D12_VIDEO_ENCODE_REFERENCE_FRAMES 结构用于描述视频编码时使用的参考帧的相关信息。以下是其定义:typedef struct D3D12_VIDEO_ENCODE_REFERENCE_FRAMES{ D3D12_VIDEO_ENCODE_REFERENCE_FRAME_INFO EncodeReferenceFrameInfo; D3D12_VIDEO_ENCODE_COMPRESSED_BITSTREAM CompressedBitstream;} D3D12_VIDEO_ENCODE_REFERENCE_FRAMES;结构的各个成员含义如下: EncodeReferenceFrameInfo: 描述编码参考帧的信息的结构,包括参考帧类型、Surface 对象等。 CompressedBitstream: 描述压缩的比特流的结构。这个结构通常用于初始化视频编码时使用的参考帧。在使用时,你需要填充这个结构,然后将其传递给相应的 API 函数或接口。具体的使用方式和最佳实践会根据你的视频编码场景而有所不同。你...
Win32 API:D3D12_VIDEO_DECODER_HEAP_DESC 结构(D3d12video.h)
在 Direct3D 12 中,D3D12_VIDEO_DECODER_HEAP_DESC 结构用于描述视频解码器堆(Decoder Heap)的属性。以下是其定义:typedef struct D3D12_VIDEO_DECODER_HEAP_DESC{ UINT NodeMask; D3D12_VIDEO_DECODER_HEAP_FLAGS Flags; UINT BlockSize; D3D12_VIDEO_DECODER_DESC DecoderDesc;} D3D12_VIDEO_DECODER_HEAP_DESC;结构的各个成员含义如下: NodeMask: 与硬件节点相关联的索引。 Flags: 解码器堆的标志,指定堆的类型和行为。 BlockSize: 解码器堆的块大小。 DecoderDesc: D3D12_VIDEO_DECODER_DESC 结构,用于描述解码器的属性。这个结构通常用于创建视频解码器堆。在使用时,你需要填充这个结构,然后将其传递给相应的 API 函数或接口。具体的使用方式和最佳实践会根据你的视频解码场景而有所不同。你可能需...
Win32 API:D3D12_VIDEO_DECODER_DESC 结构(D3d12video.h)
在 Direct3D 12 中,D3D12_VIDEO_DECODER_DESC 结构用于描述视频解码器的属性。以下是其定义:typedef struct D3D12_VIDEO_DECODER_DESC{ UINT NodeMask; D3D12_VIDEO_DECODE_PROFILE_DESC DecodeProfile; DXGI_RATIONAL FrameRate; UINT Width; UINT Height; DXGI_FORMAT Format; DXGI_RATIONAL BitRate; DXGI_RATIONAL MaxDecodePictureBufferCount;} D3D12_VIDEO_DECODER_DESC;结构的各个成员含义如下: NodeMask: 与硬件节点相关联的索引。 DecodeProfile: 描述解码配置文件的结构,包括解码配置文件的 GUID 和相应的常规描述。 FrameRate: 视频帧速率的有理数表示。 Width 和 Height: 视频帧的宽度和高度。 Format: 视...
Win32 API:D3D12_VIDEO_DECODE_REFERENCE_FRAMES 结构(D3d12video.h)
在 Direct3D 12 中,D3D12_VIDEO_DECODE_REFERENCE_FRAMES 结构用于描述视频解码时使用的参考帧的相关信息。以下是其定义:typedef struct D3D12_VIDEO_DECODE_REFERENCE_FRAMES{ D3D12_VIDEO_DECODE_REFERENCE_FRAMES_HISTOGRAM ComponentHistogram[2]; D3D12_VIDEO_DECODE_COMPRESSED_BITSTREAM CompressedBitstream; D3D12_VIDEO_DECODE_REFERENCE_FRAME_INFO DecodeFrame1; D3D12_VIDEO_DECODE_REFERENCE_FRAME_INFO DecodeFrame2;} D3D12_VIDEO_DECODE_REFERENCE_FRAMES;结构的各个成员含义如下: ComponentHistogram: 一个包含两个 D3D12_VIDEO_DECODE_REFERENCE_FRAMES_HIS...
Win32 API:D3D12_VIDEO_DECODE_OUTPUT_STREAM_ARGUMENTS1 结构(D3d12video.h)
在 Direct3D 12 中,D3D12_VIDEO_DECODE_OUTPUT_STREAM_ARGUMENTS1 结构是 D3D12_VIDEO_DECODE_OUTPUT_STREAM_ARGUMENTS 结构的扩展版本。以下是其定义:typedef struct D3D12_VIDEO_DECODE_OUTPUT_STREAM_ARGUMENTS1{ D3D12_VIDEO_DECODE_ARGUMENT_TYPE Type; union { struct { D3D12_VIDEO_SAMPLE DecodeFrame; D3D12_VIDEO_PROCESS_REFERENCES1 References; D3D12_VIDEO_PROCESS_CONVERSION_ARGUMENTS1 ConversionArguments; BOOL OutputReferenceFrameAsSubresource; } Decode;...
Win32 API:D3D12_VIDEO_DECODE_OUTPUT_STREAM_ARGUMENTS 结构(D3d12video.h)
在 Direct3D 12 中,D3D12_VIDEO_DECODE_OUTPUT_STREAM_ARGUMENTS 结构用于描述视频解码输出流的参数。以下是其定义:typedef struct D3D12_VIDEO_DECODE_OUTPUT_STREAM_ARGUMENTS{ D3D12_VIDEO_DECODE_ARGUMENT_TYPE Type; union { struct { D3D12_VIDEO_SAMPLE DecodeFrame; D3D12_VIDEO_PROCESS_REFERENCES References; D3D12_VIDEO_PROCESS_CONVERSION_ARGUMENTS ConversionArguments; BOOL OutputReferenceFrameAsSubresource; } Decode; // 其他成员 };} D3D12_VIDEO_DECODE_...
Win32 API:D3D12_VIDEO_DECODE_INPUT_STREAM_ARGUMENTS 结构(D3d12video.h)
在 Direct3D 12 中,D3D12_VIDEO_DECODE_INPUT_STREAM_ARGUMENTS 结构用于描述视频解码输入流的参数。以下是其定义:typedef struct D3D12_VIDEO_DECODE_INPUT_STREAM_ARGUMENTS{ D3D12_VIDEO_DECODE_ARGUMENT_TYPE Type; union { struct { DXGI_RATIONAL FrameRate; UINT Bitrate; UINT DecoderRefreshRate; D3D12_VIDEO_DECODE_HISTOGRAM_COMPONENTS Histograms; D3D12_VIDEO_SIZE_RANGE SizeRange; D3D12_VIDEO_DECODE_CONFIGURATION Configuration; BOOL O...
Win32 API:D3D12_VIDEO_DECODE_FRAME_ARGUMENT 结构(D3d12video.h)
在 Direct3D 12 中,D3D12_VIDEO_DECODE_FRAME_ARGUMENT 结构用于描述视频解码的帧参数。以下是其定义:typedef struct D3D12_VIDEO_DECODE_FRAME_ARGUMENT{ D3D12_VIDEO_DECODE_ARGUMENT_TYPE Type; union { struct { UINT NodeMask; D3D12_VIDEO_DECODE_REFERENCE_FRAMES ReferenceFrames; D3D12_VIDEO_DECODE_COMPRESSED_BITSTREAM CompressedBitstream; ID3D12VideoDecoderHeap* pHeap; UINT DecodeWidth; UINT DecodeHeight; DXGI_FORMAT OutputFormat;...
Win32 API:D3D12_VIDEO_DECODE_CONVERSION_ARGUMENTS1 结构(D3d12video.h)
在 Direct3D 12 中,D3D12_VIDEO_DECODE_CONVERSION_ARGUMENTS1 结构是用于描述视频解码器转换参数的扩展版本。以下是其定义:typedef struct D3D12_VIDEO_DECODE_CONVERSION_ARGUMENTS1{ D3D12_VIDEO_DECODE_REFERENCE_FRAMES1 ReferenceFrames; D3D12_VIDEO_DECODE_COMPRESSED_BITSTREAM CompressedBitstream; D3D12_VIDEO_DECODE_OUTPUT_STREAM_ARGUMENTS1 OutputStreamArguments; D3D12_VIDEO_DECODE_CONVERSION_FRAME_ARGUMENTS1 FrameArguments; D3D12_VIDEO_DECODE_INPUT_STREAM_ARGUMENTS InputStreamArguments;} D3D12_VIDEO_DECODE_CONVERSION_AR...
Win32 API:D3D12_VIDEO_DECODE_CONVERSION_ARGUMENTS 结构(D3d12video.h)
在 Direct3D 12 中,D3D12_VIDEO_DECODE_CONVERSION_ARGUMENTS 结构用于描述视频解码器的转换参数。以下是其定义:typedef struct D3D12_VIDEO_DECODE_CONVERSION_ARGUMENTS{ D3D12_VIDEO_DECODE_REFERENCE_FRAMES ReferenceFrames; D3D12_VIDEO_DECODE_COMPRESSED_BITSTREAM CompressedBitstream; D3D12_VIDEO_DECODE_OUTPUT_STREAM_ARGUMENTS OutputStreamArguments; D3D12_VIDEO_DECODE_CONVERSION_FRAME_ARGUMENTS FrameArguments; D3D12_VIDEO_DECODE_INPUT_STREAM_ARGUMENTS InputStreamArguments;} D3D12_VIDEO_DECODE_CONVERSION_ARGUMENTS;结构...
Win32 API:D3D12_VIDEO_DECODE_CONFIGURATION 结构(D3d12video.h)
D3D12_VIDEO_DECODE_CONFIGURATION 结构是用于配置视频解码器的 Direct3D 12 结构之一。以下是其定义:typedef struct D3D12_VIDEO_DECODE_CONFIGURATION{ GUID DecodeProfile; D3D12_VIDEO_FRAME_CODED_INTERLACE_TYPE CodecInterlaceType; D3D12_VIDEO_SIZE_RANGE SizeRange; UINT SequenceAlignment;} D3D12_VIDEO_DECODE_CONFIGURATION;结构的各个成员含义如下: DecodeProfile: 表示视频解码配置所使用的解码配置文件的 GUID。 CodecInterlaceType: 表示视频解码配置的编码帧的交错类型(interlace type)。 SizeRange: 表示视频解码配置的帧大小范围。 SequenceAlignment: 表示视频解码配置的序列对齐。这个结构通常用于初始化视频解码器。在使用时,你需要根据解...
Win32 API:D3D12_RESOURCE_COORDINATE 结构(D3d12video.h)
在 Direct3D 12 中,D3D12_RESOURCE_COORDINATE 结构是用于表示资源的坐标信息的结构体。以下是其定义:typedef struct D3D12_RESOURCE_COORDINATE{ UINT X; UINT Y; UINT Z; UINT SubresourceIndex;} D3D12_RESOURCE_COORDINATE;该结构的各个成员含义如下: X: 资源的 x 轴坐标。 Y: 资源的 y 轴坐标。 Z: 资源的 z 轴坐标。 SubresourceIndex: 子资源的索引。这个结构通常用于描述 3D 纹理资源中的特定像素或者表示纹理立方体的特定面。X、Y、Z 表示坐标,而 SubresourceIndex 表示子资源的索引,以确定在多个子资源中的哪一个进行操作。具体的使用方式会根据你在图形编程中的需求而有所不同。这可以包括从纹理中读取或写入数据,或者执行其他与资源坐标有关的操作。
Win32 API:D3D12_FEATURE_DATA_VIDEO_PROCESSOR_SIZE 结构(D3d12video.h)
在 Win32 API 的 Direct3D 12 中,D3D12_FEATURE_DATA_VIDEO_PROCESSOR_SIZE 结构用于查询硬件支持的视频处理器的大小。以下是该结构的定义:typedef struct D3D12_FEATURE_DATA_VIDEO_PROCESSOR_SIZE{ UINT NodeMask; D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC OutputStreamDesc; SIZE_T MemoryPoolL0Size; SIZE_T MemoryPoolL1Size;} D3D12_FEATURE_DATA_VIDEO_PROCESSOR_SIZE;结构的各个成员含义如下: NodeMask: 一个位掩码,表示用于查询的硬件节点。 OutputStreamDesc: D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC 结构,描述视频处理的输出流。 MemoryPoolL0Size: 表示第一级内存池的大小。 MemoryPoolL1Size: 表示第二级内存池...
Win32 API:D3D12_FEATURE_DATA_VIDEO_PROCESS_SUPPORT 结构(D3d12video.h)
D3D12_FEATURE_DATA_VIDEO_PROCESS_SUPPORT 结构用于查询硬件是否支持特定的视频处理功能。以下是该结构的定义:typedef struct D3D12_FEATURE_DATA_VIDEO_PROCESS_SUPPORT{ UINT NodeIndex; D3D12_VIDEO_SAMPLE InputSample; DXGI_FORMAT OutputFormat; BOOL Supported; UINT8 Reserved[3];} D3D12_FEATURE_DATA_VIDEO_PROCESS_SUPPORT;其中,各成员的含义如下: NodeIndex: 与硬件节点相关联的索引。 InputSample: 一个 D3D12_VIDEO_SAMPLE 结构,描述视频处理的输入样本。 OutputFormat: 指定视频处理的输出格式。 Supported: 如果硬件支持指定的视频处理功能,则为 TRUE;否则为 FALSE。 Reserved: 保留字段。使用该结构时,你需要填充 NodeIndex、Inpu...
Win32 API:D3D12_FEATURE_DATA_VIDEO_PROCESS_REFERENCE_INFO 结构(D3d12video.h)
D3D12_FEATURE_DATA_VIDEO_PROCESS_REFERENCE_INFO 结构是 Direct3D 12 中用于获取视频处理参考信息的一部分。这个结构通常用于查询硬件支持的视频处理功能。以下是 D3D12_FEATURE_DATA_VIDEO_PROCESS_REFERENCE_INFO 结构的定义:typedef struct D3D12_FEATURE_DATA_VIDEO_PROCESS_REFERENCE_INFO{ UINT NodeIndex; D3D12_VIDEO_PROCESS_REFERENCE_INFO ReferenceInfo;} D3D12_FEATURE_DATA_VIDEO_PROCESS_REFERENCE_INFO;其中,NodeIndex 是与硬件节点关联的索引,ReferenceInfo 是一个包含视频处理参考信息的结构。要使用这个结构,你需要填充它的成员,然后通过 ID3D12Device::CheckFeatureSupport 函数来查询硬件是否支持特定的视频处理功能。例如:D3D12_FEATURE_DA...
Win32 API:D3D12_FEATURE_DATA_VIDEO_ENCODER_INPUT_FORMAT 结构(D3d12video.h)
D3D12_FEATURE_DATA_VIDEO_ENCODER_INPUT_FORMAT 是 Direct3D 12 中用于查询视频编码器支持的输入格式的结构体,同样定义在头文件 d3d12video.h 中。以下是该结构体的定义:typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_INPUT_FORMAT { UINT NodeIndex; D3D12_VIDEO_ENCODER_CODEC Codec; DXGI_FORMAT InputFormat; D3D12_VIDEO_ENCODER_COLOR_SPACE ColorSpace; UINT Support; UINT Width; UINT Height;} D3D12_FEATURE_DATA_VIDEO_ENCODER_INPUT_FORMAT;各个字段的含义如下: NodeIndex: 用于指定 GPU 节点的索引。 Codec: 指定视频编码器使用的编解码器。 InputFormat: 指定视频编码器支持的输入格式。 ColorSpace: 指定视频编码器...
Win32 API:D3D12_FEATURE_DATA_VIDEO_ENCODER_HEAP_SIZE 结构(D3d12video.h)
D3D12_FEATURE_DATA_VIDEO_ENCODER_HEAP_SIZE 是 Direct3D 12 中的一个结构体,它用于查询视频编码器堆大小的相关信息。这个结构体定义在头文件 d3d12video.h 中。以下是该结构体的定义:typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_HEAP_SIZE { UINT NodeIndex; D3D12_VIDEO_ENCODER_CODEC Codec; DXGI_RATIONAL FrameRate; DXGI_RATIONAL BitRate; UINT Width; UINT Height; DXGI_FORMAT Format; UINT EncoderProfile; D3D12_VIDEO_ENCODER_LEVEL_CODEC_LEVEL Level; D3D12_VIDEO_ENCODER_ENCODE_CONTROL_FLAGS EncodeControlFlags; D3D12_FEATURE_DATA_VIDEO_ENCODE...
Win32 API:D3D12_FEATURE_DATA_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE 结构(D3d12video.h)
D3D12_FEATURE_DATA_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE 结构是用于查询视频编码器支持的帧子区域布局模式的 Win32 API 结构体,它通常与 Direct3D 12 中的视频编码功能一起使用。以下是该结构的定义:typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE{ D3D12_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE NodeMask; // 表示可用于视频编码的节点的位掩码。 D3D12_VIDEO_ENCODER_CODEC Codec; // 指定视频编码器编码的视频编解码器。 D3D12_VIDEO_ENCODER_PROFILE_DESC Profile; // 指定视频编码器的配置文件。 D3D12_VIDEO_ENCODER_SUBREGION_LAYOUT_MODE LayoutMode; // 输出的帧子区域布局模式。 BOOL I...
Win32 API:D3D12_FEATURE_DATA_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT 结构(D3d12video.h)
D3D12_FEATURE_DATA_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT 是 Direct3D 12 中的一个结构体,定义在 D3d12video.h 头文件中。这个结构体用于查询视频编码器支持的图片控制特性。以下是该结构体的定义:typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT { GUID CodecId; UINT DataSize; void *pData; UINT PictureControlCount; D3D12_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_DESCRIPTION *pPictureControlDescriptions;} D3D12_FEATURE_DATA_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT;这里是对结构体成员的简要说明: CodecId: 表示视频编码器的...