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 Annex E で定義されているサンプル縦横比の幅を指定します。
wSARheightに関しては比較的素数である必要があります。
wSARheight
H.264 Annex E で定義されているサンプル縦横比の高さを指定します。
bSARwidth に関しては比較的素数である必要があります。
wProfile
H.264 仕様のprofile_idcおよび制約フラグで説明されているように、シーケンス・パラメーター・セットの最初の 2 バイトを指定します。
このメンバーは、使用するプロファイルと適用可能な制約を示します。
使用できる値の例を次に示します。
価値 | 形容 |
---|---|
0x4240 | 制約付きベースライン プロファイル。 |
0x4200 | ベースライン プロファイル。 |
0x4D00 | メイン プロファイル。 |
0x6400 | 高プロファイル。 |
0x5300 | スケーラブルなベースライン プロファイル。 |
0x5600 | スケーラブルな高プロファイル。 |
0x7600 | Multiview High Profile。 |
0x8000 | ステレオハイプロファイル。 |
bLevelIDC
level_idc フラグで説明されているレベルを指定します。
このメンバーは、このフレーム記述子の解像度と最大ビット レートをサポートする最小レベルを示します。
使用できる値の例を次に示します。
価値 | 形容 |
---|---|
0x1F | レベル 3.1。 |
0x28 | レベル 4.0。 |
wConstrainedToolset
wProfile で許可される機能を制限します。
価値 | 形容 |
---|---|
0 | 制約はありません。 選択した wProfile と bmSetting セットによって定義されているすべてのツールが許可されます。 |
1 | ユニファイド コミュニケーション (UC) の制約付き高ツールセット。 |
2 | UC スケーラブルな制約付き High1。 |
3 | UC スケーラブルな制約付きベースライン 1。 |
4 から 65535 | 引っ込み思案。 |
bmSupportedUsages
サポートされている使用法を指定するビットマップを定義します。
ビット | 形容 |
---|---|
D0 | リアルタイム/UCConfig (Unified Communication Configuration) モード 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 | ルマ/クロマ用に独立したQP。 |
D4 | Cb/Cr 用に QP を分離します。 |
D5 | 画像の並べ替えなし。 |
D15-D6 | 引っ込み思案;0 に設定します。 |
bmSVCCapabilities
スケーラブル ビデオ コーディング (SVC) 機能を指定するビットマップを定義します。
ビット | 形容 |
---|---|
D2-D0 | テンポラル レイヤーの最大数から 1 を引いた値。 |
D3 | 書き換えのサポート。 |
D6-D4 | 粗いグレイン スケーラビリティ (CGS) レイヤーの最大数から 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
bmSupportedSyncFrameTypes BYTE メンバーを定義します。
bResolutionScaling
同期フレームの種類を指定するビットマップを定義します。
ビット | 形容 |
---|---|
D0 | シーケンス パラメーター セット (SPS) ヘッダーと Picture Parameter Set (PPS) ヘッダーを含む即時デコード更新 (IDR) フレーム。 |
D1 | 長期的な参照フレームである IDR フレーム (SPS および PPS ヘッダーを含む)。 |
D2 | ランダム アクセス I フレーム (SPS および PPS ヘッダー付き)。IDR フレームの場合とそうでない場合があります。 |
D3 | 長期的な参照フレームである P フレーム。 |
D7-D4 | 引っ込み思案;0 に設定します。 |
bSimulcastSupport
H.264 ビデオ ストリーミング エンドポイントの数と、このエンドポイントがサポートするストリームの数を指定します。
価値 | 形容 |
---|---|
0 | 1 つのエンドポイントと 1 つのストリーム。 |
1 | 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
スケーラブルでない Advanced Video Coding (AVC) ストリームに対して許可されるマクロ ブロック処理の最大速度を指定します。すべてのレイヤーの解像度が同じ場合に、すべてのレイヤーで合計されます。
wMaxMBperSecTwoResolutionsNoScalability
すべてのレイヤーが 2 つの異なる解像度で構成されている場合に、すべてのレイヤーで合計される、非スケーラブルな AVC ストリームに対して許可される最大マクロ ブロック処理速度を指定します。
wMaxMBperSecThreeResolutionsNoScalability
すべてのレイヤーが 3 つの異なる解像度で構成されている場合に、すべてのレイヤーで合計される、非スケーラブルな AVC ストリームに対して許可される最大マクロ ブロック処理速度を指定します。
wMaxMBperSecFourResolutionsNoScalability
すべてのレイヤーが 4 つの異なる解像度で構成されている場合に、すべてのレイヤーで合計される、非スケーラブルな AVC ストリームに対して許可される最大マクロ ブロック処理速度を指定します。
wMaxMBperSecOneResolutionTemporalScalability
テンポラルスケーラブル ストリームに対して許可されるマクロ ブロック処理の最大速度を指定します。すべてのレイヤーの解像度が同じ場合に、すべてのレイヤーで合計されます。
wMaxMBperSecTwoResolutionsTemporalScalablility
すべてのレイヤーが 2 つの異なる解像度で構成されている場合に、一時的にスケーラブルなストリームに対して許可されるマクロ ブロック処理の最大速度を指定します。
wMaxMBperSecThreeResolutionsTemporalScalability
すべてのレイヤーが 3 つの異なる解像度で構成されている場合に、一時的にスケーラブルなストリームに対して許可されるマクロ ブロック処理の最大速度を指定します。
wMaxMBperSecFourResolutionsTemporalScalability
すべてのレイヤーが 4 つの異なる解像度で構成されている場合に、すべてのレイヤーで合計される、完全にスケーラブルなストリームに対して許可される最大マクロ ブロック処理速度を指定します。
wMaxMBperSecOneResolutionTemporalQualityScalability
テンポラルおよび品質のスケーラブルな SVC ストリームに対して許可されるマクロ ブロック処理の最大速度を指定します。すべてのレイヤーの解像度が同じ場合、すべてのレイヤーで合計されます。
wMaxMBperSecTwoResolutionsTemporalQualityScalability
すべてのレイヤーが 2 つの異なる解像度で構成されている場合に、テンポラルおよび品質のスケーラブルな SVC ストリームに対して許可される最大マクロ ブロック処理速度を指定します。
wMaxMBperSecThreeResolutionsTemporalQualityScalablity
すべてのレイヤーが 3 つの異なる解像度で構成されている場合に、テンポラルおよび品質のスケーラブルな SVC ストリームに対して許可される最大マクロブロック処理速度を指定します。
wMaxMBperSecFourResolutionsTemporalQualityScalability
すべてのレイヤーが 4 つの異なる解像度で構成されている場合に、テンポラルおよび品質のスケーラブルな SVC ストリームに対して許可される最大マクロブロック処理速度を指定します。
wMaxMBperSecOneResolutionTemporalSpatialScalability
wMaxMBperSecOneResolutionTemporalSpatialScalability word メンバー を定義します。
wMaxMBperSecTwoResolutionsTemporalSpatialScalability
wMaxMBperSecTwoResolutionsTemporalSpatialScalability word メンバー を定義します。
wMaxMBperSecThreeResolutionsTemporalSpatialScalablity
wMaxMBperSecThreeResolutionsTemporalSpatialScalablity word メンバー を定義します。
wMaxMBperSecFourResolutionsTemporalSpatialScalability
wMaxMBperSecFourResolutionsTemporalSpatialScalability word メンバー を定義します。
wMaxMBperSecOneResolutionFullScalability
完全にスケーラブルなストリームに対して許可されるマクロ ブロック処理の最大速度を指定します。すべてのレイヤーの解像度が同じ場合に、すべてのレイヤーで合計されます。
wMaxMBperSecTwoResolutionsFullScalability
すべてのレイヤーが 2 つの異なる解像度で構成されている場合に、すべてのレイヤーで合計される、完全にスケーラブルなストリームに対して許可される最大マクロ ブロック処理速度を指定します。
wMaxMBperSecThreeResolutionsFullScalability
すべてのレイヤーが 3 つの異なる解像度で構成されている場合に、すべてのレイヤーで合計される、完全にスケーラブルなストリームに対して許可される最大マクロ ブロック処理速度を指定します。
wMaxMBperSecFourResolutionsFullScalability
すべてのレイヤーが 4 つの異なる解像度で構成されている場合に、すべてのレイヤーで合計される、完全にスケーラブルなストリームに対して許可される最大マクロ ブロック処理速度を指定します。
備考
KS_H264VIDEOINFO構造体には、フレームとフォーマット記述子の情報が含まれています。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 8 |
サポートされる最小サーバー | Windows Server 2012 |
ヘッダー | ksmedia.h (Ksmedia.h を含む) |