KS_H264VIDEOINFO structure

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

Syntax


typedef struct _KS_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  bDynamicResolutionScaling;
  BYTE  bSimulcastSupport;
  BYTE  bmSupportedRateControlModes;
  DWORD dwMaxMBperSecOneResolutionNoScalability;
  DWORD dwMaxMBperSecTwoResolutionsNoScalability;
  DWORD dwMaxMBperSecThreeResolutionsNoScalability;
  DWORD dwMaxMBperSecFourResolutionsNoScalability;
  DWORD dwMaxMBperSecOneResolutionTemporalScalability;
  DWORD dwMaxMBperSecTwoResolutionsTemporalScalablility;
  DWORD dwMaxMBperSecThreeResolutionsTemporalScalability;
  DWORD dwMaxMBperSecFourResolutionsTemporalScalability;
  DWORD dwMaxMBperSecOneResolutionTemporalQualityScalability;
  DWORD dwMaxMBperSecTwoResolutionsTemporalQualityScalability;
  DWORD dwMaxMBperSecThreeResolutionsTemporalQualityScalablity;
  DWORD dwMaxMBperSecFourResolutionsTemporalQualityScalability;
  DWORD dwMaxMBperSecOneResolutionFullScalability;
  DWORD dwMaxMBperSecTwoResolutionsFullScalability;
  DWORD dwMaxMBperSecThreeResolutionsFullScalability;
  DWORD dwMaxMBperSecFourResolutionsFullScalability;
} 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:

ValueDescription
0x4240Constrained Baseline Profile.
0x4200Baseline Profile.
0x4D00Main Profile.
0x6400High Profile.
0x5300Scalable Baseline Profile.
0x5600Scalable High Profile.
0x7600Multiview High Profile.
0x8000Stereo 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:

ValueDescription
0x1FLevel 3.1.
0x28Level 4.0.

 

wConstrainedToolset

Constrains the features allowed by wProfile.

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

 

bmSupportedUsages

Defines the bitmap that specifies the supported usages.

BitsDescription
D0Real-time/UCConfig (Unified Communication Configuration) mode 0.
D1Real-time/UCConfig mode 1.
D2Real-time/UCConfig mode 2Q.
D3Real-time/UCConfig mode 2S.
D4Real-time/UCConfig mode 3.
D7-D5Reserved; set to 0.
D15-D8Broadcast modes.
D16File storage mode with I and P slices (for example, IPPP).
D17File storage mode with I, P and B slices (for example, IB...IP).
D18File storage all-I-frame mode.
D23-D19Reserved; set to 0.
D24MVC Stereo High Mode.
D25MVC Multiview Mode.
D31-D26Reserved; set to 0.

 

bmCapabilities

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

BitsDescription
D0Context based Adaptive Variable Length Coding (CAVLC ) only.
D1Context based Adaptive Binary Arithmetic Coding (CABAC) only.
D2Constant frame rate.
D3Separate QP for luma/chroma.
D4Separate QP for Cb/Cr.
D5No picture reordering.
D15-D6Reserved; set to 0.

 

bmSVCCapabilities

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

BitsDescription
D2-D0Maximum number of temporal layers minus 1.
D3Rewrite support.
D6-D4Maximum number of Coarse Grained Scalability (CGS) layers minus 1.
D9-D7Maximum number of Medium Grained Scalability (MGS) sublayers.
D10Additional SNR scalability support in spatial enhancement layers.
D13-D11Maximum number of spatial layers minus 1.
D31-D14Reserved.

 

bmMVCCapabilities

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

BitsDescription
D2-D0Maximum number of temporal layers minus 1.
D11-D3Maximum number of view components minus 1.
D31-D11Reserved.

 

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.

BitsDescription
D0Slice mode 0.
D1Slice mode 1.
D7-D2Reserved.

 

bmSupportedSyncFrameTypes
bDynamicResolutionScaling

Defines the bitmap that specifies the synchronization frame types.

BitsDescription
D0Instantaneous Decoding Refresh (IDR) frame with Sequence Parameter Set (SPS) and Picture Parameter Set (PPS) headers.
D1IDR frame (with SPS and PPS headers) that is a long term reference frame.
D2Random-access I frame (with SPS and PPS headers), which may or may not be an IDR frame.
D3P frame that is a long term reference frame.
D7-D4Reserved; set to 0.

 

bSimulcastSupport

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

ValueDescription
0One endpoint and one stream.
1One endpoint and multiple streams.

 

bmSupportedRateControlModes

Defines the bitmap that specifies the rate control modes.

BitsDescription
D0Variable Bit Rate (VBR) without underflow (H.264 low_delay_hrd_flag = 0).
D1Constant Bit Rate (CBR) (H.264 low_delay_hrd_flag = 0).
D2Constant QP.
D3Global VBR without underflow (H.264 low_delay_hrd_flag = 0).
D4VBR with underflow allowed (H.264 low_delay_hrd_flag = 1).
D5Global VBR with underflow allowed (H.264 low_delay_hrd_flag = 1).

 

dwMaxMBperSecOneResolutionNoScalability

Specifies the maximum macroblock processing rate allowed for non-scalable Advanced Video Coding (AVC) streams, summing up across all layers when all layers have the same resolution.

dwMaxMBperSecTwoResolutionsNoScalability

Specifies the maximum macroblock processing rate allowed for non-scalable AVC streams, summing up across all layers when all layers consist of two different resolutions.

dwMaxMBperSecThreeResolutionsNoScalability

Specifies the maximum macroblock processing rate allowed for non-scalable AVC streams, summing up across all layers when all layers consist of three different resolutions.

dwMaxMBperSecFourResolutionsNoScalability

Specifies the maximum macroblock processing rate allowed for non-scalable AVC streams, summing up across all layers when all layers consist of four different resolutions.

dwMaxMBperSecOneResolutionTemporalScalability

Specifies the maximum macroblock processing rate allowed for temporal scalable streams, summing up across all layers when all layers have the same resolution.

dwMaxMBperSecTwoResolutionsTemporalScalablility

Specifies the maximum macroblock processing rate allowed for temporal scalable streams, summing up across all layers when all layers consist of two different resolutions.

dwMaxMBperSecThreeResolutionsTemporalScalability

Specifies the maximum macroblock processing rate allowed for temporal scalable streams, summing up across all layers when all layers consist of three different resolutions.

dwMaxMBperSecFourResolutionsTemporalScalability

Specifies the maximum macroblock processing rate allowed for temporal scalable streams, summing up across all layers when all layers consist of four different resolutions.

dwMaxMBperSecOneResolutionTemporalQualityScalability

Specifies the maximum macroblock processing rate allowed for temporal and quality scalable SVC streams, summing up across all layers when all layers have the same resolution.

dwMaxMBperSecTwoResolutionsTemporalQualityScalability

Specifies the maximum macroblock processing rate allowed for temporal and quality scalable SVC streams, summing up across all layers when all layers consist of two different resolutions.

dwMaxMBperSecThreeResolutionsTemporalQualityScalablity

Specifies the maximum macroblock processing rate allowed for temporal and quality scalable SVC streams, summing up across all layers when all layers consist of three different resolutions.

dwMaxMBperSecFourResolutionsTemporalQualityScalability

Specifies the maximum macroblock processing rate allowed for temporal and quality scalable SVC streams, summing up across all layers when all layers consist of four different resolutions.

dwMaxMBperSecOneResolutionFullScalability

Specifies the maximum macroblock processing rate allowed for fully scalable streams, summing up across all layers when all layers have the same resolution.

dwMaxMBperSecTwoResolutionsFullScalability

Specifies the maximum macroblock processing rate allowed for fully scalable streams, summing up across all layers when all layers consist of two different resolutions.

dwMaxMBperSecThreeResolutionsFullScalability

Specifies the maximum macroblock processing rate allowed for fully scalable streams, summing up across all layers when all layers consist of three different resolutions.

dwMaxMBperSecFourResolutionsFullScalability

Specifies the maximum macroblock processing rate allowed for fully scalable streams, summing up across all layers when all layers consist of four different resolutions.

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

 

 

Send comments about this topic to Microsoft

Show:
© 2014 Microsoft. All rights reserved.