KS_H264VIDEOINFO structure (ksmedia.h)

The KS_H264VIDEOINFO describes the device capabilities that apply to the current media type.

Syntax

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;

Members

wWidth

Specifies the width in pixels of pictures output from the decoding process.

Note

The value for this member must be a multiple of 2, but it does not have to be an integer multiple of 16. It can be specified using a frame cropping rectangle in the active Sequence Parameter Set (SPS).

wHeight

Specifies the height in pixels of pictures output from the decoding process.

Note

The value for this member must be a multiple of 2. When field coding or frame/field adaptive coding is used, it must be a multiple of 4. It does not have to be an integer multiple of 16. It can be specified using a frame cropping rectangle in the active SPS.

wSARwidth

Specifies the sample aspect ratio width as defined in the H.264 Annex E.

Note

It must be relatively prime with respect to wSARheight.

wSARheight

Specifies the sample aspect ratio height as defined in the H.264 Annex E.

Note

It must be relatively prime with respect to bSARwidth.

wProfile

Specifies the first two bytes of the sequence parameter set as described by profile_idc and constraint flags in the H.264 specification.

Note

This member indicates the profile and applicable constraints to be used.

The following are examples of allowed values:

Value Description
0x4240 Constrained Baseline Profile.
0x4200 Baseline Profile.
0x4D00 Main Profile.
0x6400 High Profile.
0x5300 Scalable Baseline Profile.
0x5600 Scalable High Profile.
0x7600 Multiview High Profile.
0x8000 Stereo High Profile.

bLevelIDC

Specifies the level as described by the level_idc flag.

Note

This member indicates the minimum level that supports the resolution and the maximum bit rate for this frame descriptor.

The following are examples of allowed values:

Value Description
0x1F Level 3.1.
0x28 Level 4.0.

wConstrainedToolset

Constrains the features allowed by wProfile.

Value Description
0 No constraints. All tools defined by the selected wProfile and the bmSetting set are allowed.
1 Unified Communication (UC) Constrained High Toolset.
2 UC Scalable Constrained High1.
3 UC Scalable Constrained Baseline1.
4 to 65535 Reserved.

bmSupportedUsages

Defines the bitmap that specifies the supported usages.

Bits Description
D0 Real-time/UCConfig (Unified Communication Configuration) mode 0.
D1 Real-time/UCConfig mode 1.
D2 Real-time/UCConfig mode 2Q.
D3 Real-time/UCConfig mode 2S.
D4 Real-time/UCConfig mode 3.
D7-D5 Reserved; set to 0.
D15-D8 Broadcast modes.
D16 File storage mode with I and P slices (for example, IPPP).
D17 File storage mode with I, P and B slices (for example, IB...IP).
D18 File storage all-I-frame mode.
D23-D19 Reserved; set to 0.
D24 MVC Stereo High Mode.
D25 MVC Multiview Mode.
D31-D26 Reserved; set to 0.

bmCapabilities

Defines the bitmap that specifies the capabilities for this frame descriptor.

Bits Description
D0 Context based Adaptive Variable Length Coding (CAVLC ) only.
D1 Context based Adaptive Binary Arithmetic Coding (CABAC) only.
D2 Constant frame rate.
D3 Separate QP for luma/chroma.
D4 Separate QP for Cb/Cr.
D5 No picture reordering.
D15-D6 Reserved; set to 0.

bmSVCCapabilities

Defines the bitmap that specifies the Scalable Video Coding (SVC) capabilities.

Bits Description
D2-D0 Maximum number of temporal layers minus 1.
D3 Rewrite support.
D6-D4 Maximum number of Coarse Grained Scalability (CGS) layers minus 1.
D9-D7 Maximum number of Medium Grained Scalability (MGS) sublayers.
D10 Additional SNR scalability support in spatial enhancement layers.
D13-D11 Maximum number of spatial layers minus 1.
D31-D14 Reserved.

bmMVCCapabilities

Defines the bitmap that specifies the Multicast Video Coding (MVC) capabilities.

Bits Description
D2-D0 Maximum number of temporal layers minus 1.
D11-D3 Maximum number of view components minus 1.
D31-D11 Reserved.

dwFrameInterval

Specifies the supported frame interval.

Note

This is the shortest frame interval supported, at the highest frame rate, in 100-nanoseconds units.

bMaxCodecConfigDelay

Specifies the maximum number of frames the encoder takes to respond to a command.

bmSupportedSliceModes

Defines the bitmap that specifies the slice modes.

Bits Description
D0 Slice mode 0.
D1 Slice mode 1.
D7-D2 Reserved.

bmSupportedSyncFrameTypes

bResolutionScaling

bSimulcastSupport

Specifies the number of H.264 video streaming endpoints and the number of streams this endpoint supports.

Value Description
0 One endpoint and one stream.
1 One endpoint and multiple streams.

bmSupportedRateControlModes

Defines the bitmap that specifies the rate control modes.

Bits Description
D0 Variable bit rate (VBR) with underflow allowed (H.264 low_delay_hrd_flag = 1).
D1 Constant bit rate (CBR) (H.264 low_delay_hrd_flag = 0).
D2 Constant QP.
D3 Global VBR with underflow allowed (H.264 low_delay_hrd_flag = 1).
D4 VBR without underflow (H.264 low_delay_hrd_flag = 0).
D5 Global VBR without underflow (H.264 low_delay_hrd_flag = 0).
D7-D6 Reserved, set to 0.

wMaxMBperSecOneResolutionNoScalability

wMaxMBperSecTwoResolutionsNoScalability

wMaxMBperSecThreeResolutionsNoScalability

wMaxMBperSecFourResolutionsNoScalability

wMaxMBperSecOneResolutionTemporalScalability

wMaxMBperSecTwoResolutionsTemporalScalablility

wMaxMBperSecThreeResolutionsTemporalScalability

wMaxMBperSecFourResolutionsTemporalScalability

wMaxMBperSecOneResolutionTemporalQualityScalability

wMaxMBperSecTwoResolutionsTemporalQualityScalability

wMaxMBperSecThreeResolutionsTemporalQualityScalablity

wMaxMBperSecFourResolutionsTemporalQualityScalability

wMaxMBperSecOneResolutionTemporalSpatialScalability

wMaxMBperSecTwoResolutionsTemporalSpatialScalability

wMaxMBperSecThreeResolutionsTemporalSpatialScalablity

wMaxMBperSecFourResolutionsTemporalSpatialScalability

wMaxMBperSecOneResolutionFullScalability

wMaxMBperSecTwoResolutionsFullScalability

wMaxMBperSecThreeResolutionsFullScalability

wMaxMBperSecFourResolutionsFullScalability

Remarks

The KS_H264VIDEOINFO structure contains the frame and the format descriptor information.

Requirements

   
Minimum supported client Windows 8
Minimum supported server Windows Server 2012
Header ksmedia.h (include Ksmedia.h)

See also

KS_DATAFORMAT_H264VIDEOINFO

KS_DATARANGE_H264_VIDEO