KS_H264VIDEOINFO结构 (ksmedia.h)

KS_H264VIDEOINFO 描述适用于当前媒体类型的设备功能。

语法

typedef struct tagKS_H264VIDEOINFO {
  WORD  wWidth;
  WORD  wHeight;
  WORD  wSARwidth;
  WORD  wSARheight;
  WORD  wProfile;
  BYTE  bLevelIDC;
  WORD  wConstrainedToolset;
  DWORD bmSupportedUsages;
  WORD  bmCapabilities;
  DWORD bmSVCCapabilities;
  DWORD bmMVCCapabilities;
  DWORD dwFrameInterval;
  BYTE  bMaxCodecConfigDelay;
  BYTE  bmSupportedSliceModes;
  BYTE  bmSupportedSyncFrameTypes;
  BYTE  bResolutionScaling;
  BYTE  bSimulcastSupport;
  BYTE  bmSupportedRateControlModes;
  WORD  wMaxMBperSecOneResolutionNoScalability;
  WORD  wMaxMBperSecTwoResolutionsNoScalability;
  WORD  wMaxMBperSecThreeResolutionsNoScalability;
  WORD  wMaxMBperSecFourResolutionsNoScalability;
  WORD  wMaxMBperSecOneResolutionTemporalScalability;
  WORD  wMaxMBperSecTwoResolutionsTemporalScalablility;
  WORD  wMaxMBperSecThreeResolutionsTemporalScalability;
  WORD  wMaxMBperSecFourResolutionsTemporalScalability;
  WORD  wMaxMBperSecOneResolutionTemporalQualityScalability;
  WORD  wMaxMBperSecTwoResolutionsTemporalQualityScalability;
  WORD  wMaxMBperSecThreeResolutionsTemporalQualityScalablity;
  WORD  wMaxMBperSecFourResolutionsTemporalQualityScalability;
  WORD  wMaxMBperSecOneResolutionTemporalSpatialScalability;
  WORD  wMaxMBperSecTwoResolutionsTemporalSpatialScalability;
  WORD  wMaxMBperSecThreeResolutionsTemporalSpatialScalablity;
  WORD  wMaxMBperSecFourResolutionsTemporalSpatialScalability;
  WORD  wMaxMBperSecOneResolutionFullScalability;
  WORD  wMaxMBperSecTwoResolutionsFullScalability;
  WORD  wMaxMBperSecThreeResolutionsFullScalability;
  WORD  wMaxMBperSecFourResolutionsFullScalability;
} KS_H264VIDEOINFO, *PKS_H264VIDEOINFO;

成员

wWidth

指定解码过程中图片输出的宽度(以像素为单位)。

此成员的值必须是 2 的倍数,但它不必是 16 的整数倍数。 可以使用活动序列参数集(SPS)中的框架裁剪矩形来指定它。

wHeight

指定解码过程中图片输出的高度(以像素为单位)。

此成员的值必须是 2 的倍数。 使用字段编码或帧/字段自适应编码时,它必须是 4 的倍数。 它不必是 16 的整数倍数。 可以使用活动 SPS 中的框架裁剪矩形指定它。

wSARwidth

指定 H.264 附件 E 中定义的样本纵横比宽度。

wSARheight而言,它必须相对黄金。

wSARheight

指定 H.264 附件 E 中定义的样本纵横比高度。

bSARwidth,这一点必须相对黄金。

wProfile

指定序列参数集的前两个字节,如 H.264 规范中的profile_idc和约束标志所述。

此成员指示要使用的配置文件和适用约束。

下面是允许值的示例:

价值 描述
0x4240 受约束的基线配置文件。
0x4200 基线配置文件。
0x4D00 主配置文件。
0x6400 高配置文件。
0x5300 可缩放的基线配置文件。
0x5600 可缩放的高配置文件。
0x7600 多视图高配置文件。
0x8000 立体声高调。

bLevelIDC

指定level_idc标志所描述的级别。

此成员指示支持此帧描述符的分辨率和最大比特率的最低级别。

下面是允许值的示例:

价值 描述
0x1F 级别 3.1。
0x28 级别 4.0。

wConstrainedToolset

约束 wProfile允许的功能。

价值 描述
0 无约束。 允许所选 wProfile 和 bmSetting 集定义的所有工具。
1 统一通信 (UC) 约束高工具集。
2 UC 可缩放约束的高 1。
3 UC 可缩放约束基线 1。
4 到 65535 保留。

bmSupportedUsages

定义指定支持的用法的位图。

描述
D0 实时/UCConfig(统一通信配置)模式 0。
D1 实时/UCConfig 模式 1。
D2 实时/UCConfig 模式 2Q。
D3 实时/UCConfig 模式 2S。
D4 实时/UCConfig 模式 3。
D7-D5 保留;设置为 0。
D15-D8 广播模式。
D16 具有 I 和 P 切片的文件存储模式(例如 IPPP)。
D17 包含 I、P 和 B 切片的文件存储模式(例如 IB...IP)。
D18 文件存储全 I 帧模式。
D23-D19 保留;设置为 0。
D24 MVC 立体声高模式。
D25 MVC 多视图模式。
D31-D26 保留;设置为 0。

bmCapabilities

定义指定此帧描述符功能的位图。

描述
D0 仅基于上下文的自适应变量长度编码(CAVLC)。
D1 仅基于上下文的自适应二进制算术编码(CABAC)。
D2 常量帧速率。
D3 用于 luma/chroma 的单独 QP。
D4 适用于 Cb/Cr 的单独 QP。
D5 没有图片重新排序。
D15-D6 保留;设置为 0。

bmSVCCapabilities

定义指定可缩放视频编码 (SVC) 功能的位图。

描述
D2-D0 临时层的最大数目减去 1。
D3 重写支持。
D6-D4 粗粒度可伸缩性层的最大数量减 1。
D9-D7 中等粒度可伸缩性(MGS)子层的最大数量。
D10 空间增强层中的其他 SNR 可伸缩性支持。
D13-D11 空间层的最大数目减去 1。
D31-D14 保留。

bmMVCCapabilities

定义指定多播视频编码 (MVC) 功能的位图。

描述
D2-D0 临时层的最大数目减去 1。
D11-D3 视图组件的最大数目减去 1。
D31-D11 保留。

dwFrameInterval

指定支持的帧间隔。

这是以 100 纳秒为单位的最高帧速率支持的最短帧间隔。

bMaxCodecConfigDelay

指定编码器响应命令所需的最大帧数。

bmSupportedSliceModes

定义指定切片模式的位图。

描述
D0 切片模式 0。
D1 切片模式 1。
D7-D2 保留。

bmSupportedSyncFrameTypes

定义 BYTE 成员 bmSupportedSyncFrameTypes

bResolutionScaling

定义指定同步帧类型的位图。

描述
D0 具有序列参数集(SPS)和图片参数集(PPS)标头的即时解码刷新(PPI)帧。
D1 使用 SPS 和 PPS 标头(具有长期参考帧)的 PPI 帧。
D2 随机访问 I 帧(包含 SPS 和 PPS 标头),该标头可以是或可能不是一个 PPI 帧。
D3 是长期参考帧的 P 帧。
D7-D4 保留;设置为 0。

bSimulcastSupport

指定 H.264 视频流式处理终结点的数量以及此终结点支持的流数。

价值 描述
0 一个终结点和一个流。
1 一个终结点和多个流。

bmSupportedRateControlModes

定义指定速率控制模式的位图。

描述
D0 允许使用下溢的可变比特率 (VBR)(H.264 low_delay_hrd_flag = 1)。
D1 常量比特率 (CBR) (H.264 low_delay_hrd_flag = 0)。
D2 常量 QP。
D3 允许使用下溢的全局 VBR(H.264 low_delay_hrd_flag = 1)。
D4 没有下溢的 VBR (H.264 low_delay_hrd_flag = 0)。
D5 不带下溢的全局 VBR (H.264 low_delay_hrd_flag = 0)。
D7-D6 保留,设置为 0。

wMaxMBperSecOneResolutionNoScalability

指定不可缩放的高级视频编码 (AVC) 流允许的最大宏块处理速率,在所有层具有相同分辨率时,在所有层中求和。

wMaxMBperSecTwoResolutionsNoScalability

指定不可缩放的 AVC 流允许的最大宏块处理速率,当所有层包含两个不同的分辨率时,跨所有层求和。

wMaxMBperSecThreeResolutionsNoScalability

指定不可缩放的 AVC 流允许的最大宏块处理速率,当所有层包含三个不同的分辨率时,跨所有层求和。

wMaxMBperSecFourResolutionsNoScalability

指定不可缩放的 AVC 流允许的最大宏块处理速率,当所有层包含四个不同的分辨率时,跨所有层求和。

wMaxMBperSecOneResolutionTemporalScalability

指定临时可缩放流允许的最大宏块处理速率,当所有层具有相同分辨率时,跨所有层求和。

wMaxMBperSecTwoResolutionsTemporalScalablility

指定临时可缩放流允许的最大宏块处理速率,当所有层包含两个不同的分辨率时,跨所有层求和。

wMaxMBperSecThreeResolutionsTemporalScalability

指定临时可缩放流允许的最大宏块处理速率,当所有层包含三个不同的分辨率时,跨所有层求和。

wMaxMBperSecFourResolutionsTemporalScalability

指定允许完全可缩放流的最大宏块处理速率,当所有层包含四个不同的分辨率时,跨所有层求和。

wMaxMBperSecOneResolutionTemporalQualityScalability

指定临时和质量可缩放 SVC 流允许的最大宏块处理速率,当所有层具有相同分辨率时,跨所有层求和。

wMaxMBperSecTwoResolutionsTemporalQualityScalability

指定临时和质量可缩放 SVC 流允许的最大宏块处理速率,当所有层包含两个不同的分辨率时,跨所有层求和。

wMaxMBperSecThreeResolutionsTemporalQualityScalablity

指定临时和质量可缩放 SVC 流允许的最大宏块处理速率,当所有层包含三个不同的分辨率时,跨所有层求和。

wMaxMBperSecFourResolutionsTemporalQualityScalability

指定临时和质量可缩放 SVC 流允许的最大宏块处理速率,当所有层包含四个不同的分辨率时,跨所有层求和。

wMaxMBperSecOneResolutionTemporalSpatialScalability

定义 WORD 成员 wMaxMBperSecOneResolutionTemporalSpatialScalability

wMaxMBperSecTwoResolutionsTemporalSpatialScalability

定义 WORD 成员 wMaxMBperSecTwoResolutionsTemporalSpatialScalability

wMaxMBperSecThreeResolutionsTemporalSpatialScalablity

定义 WORD 成员 wMaxMBperSecThreeResolutionsTemporalSpatialScalablity

wMaxMBperSecFourResolutionsTemporalSpatialScalability

定义 WORD 成员 wMaxMBperSecFourResolutionsTemporalSpatialScalability

wMaxMBperSecOneResolutionFullScalability

指定允许完全可缩放流的最大宏块处理速率,在所有层都具有相同的分辨率时,跨所有层求和。

wMaxMBperSecTwoResolutionsFullScalability

指定完全可缩放的流允许的最大宏块处理速率,当所有层包含两个不同的分辨率时,跨所有层求和。

wMaxMBperSecThreeResolutionsFullScalability

指定完全可缩放流允许的最大宏块处理速率,当所有层包含三个不同的分辨率时,跨所有层求和。

wMaxMBperSecFourResolutionsFullScalability

指定允许完全可缩放流的最大宏块处理速率,当所有层包含四个不同的分辨率时,跨所有层求和。

言论

KS_H264VIDEOINFO结构包含框架和格式描述符信息。

要求

要求 价值
最低支持的客户端 Windows 8
支持的最低服务器 Windows Server 2012
标头 ksmedia.h (包括 Ksmedia.h)

另请参阅

KS_DATAFORMAT_H264VIDEOINFO

KS_DATARANGE_H264_VIDEO