次の方法で共有


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 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

サポートされている使用法を指定するビットマップを定義します。

Bits 説明
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

このフレーム記述子の機能を指定するビットマップを定義します。

Bits 説明
D0 コンテキスト ベースのアダプティブ可変長コーディング (CAVLC) のみ。
D1 コンテキスト ベースのアダプティブ バイナリ算術コーディング (CABAC) のみ。
D2 一定のフレーム レート。
D3 ルマ/クロマ用の別個のQP。
D4 Cb/Cr 用の個別の QP。
D5 画像の並べ替えなし。
D15-D6 予約;を 0 に設定します。

bmSVCCapabilities

スケーラブル ビデオ コーディング (SVC) 機能を指定するビットマップを定義します。

Bits 説明
D2-D0 テンポラル レイヤーの最大数から 1 を引いた値。
D3 書き換えのサポート。
D6-D4 粗粒度スケーラビリティ (CGS) レイヤーの最大数から 1 を引いた値。
D9-D7 中粒度スケーラビリティ (MGS) サブレイヤーの最大数。
D10 空間拡張レイヤーでの追加の SNR スケーラビリティのサポート。
D13-D11 空間レイヤーの最大数から 1 を引いた値。
D31-D14 予約済み。

bmMVCCapabilities

マルチキャスト ビデオ コーディング (MVC) 機能を指定するビットマップを定義します。

Bits 説明
D2-D0 テンポラル レイヤーの最大数から 1 を引いた値。
D11-D3 ビュー コンポーネントの最大数から 1 を引いた値。
D31-D11 予約済み。

dwFrameInterval

サポートされているフレーム間隔を指定します。

これは、最大フレーム レート (100 ナノ秒単位) でサポートされる最短のフレーム間隔です。

bMaxCodecConfigDelay

エンコーダーがコマンドに応答するために必要な最大フレーム数を指定します。

bmSupportedSliceModes

スライス モードを指定するビットマップを定義します。

Bits 説明
D0 スライス モード 0。
D1 スライス モード 1。
D7-D2 予約済み。

bmSupportedSyncFrameTypes

BYTE メンバー bmSupportedSyncFrameTypes を定義します

bResolutionScaling

同期フレームの種類を指定するビットマップを定義します。

Bits 説明
D0 シーケンス パラメーター セット (SPS) ヘッダーとピクチャ パラメーター セット (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

レート制御モードを指定するビットマップを定義します。

Bits 説明
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

テンポラルおよび品質のスケーラブルな SVC ストリームに対して許可される最大マクロブロック処理速度を指定します。すべてのレイヤーが 2 つの異なる解像度で構成されている場合、すべてのレイヤーで合計されます。

wMaxMBperSecThreeResolutionsTemporalQualityScalablity

テンポラルおよび品質のスケーラブルな SVC ストリームに対して許可される最大マクロブロック処理レートを指定します。すべてのレイヤーが 3 つの異なる解像度で構成されている場合、すべてのレイヤーで合計されます。

wMaxMBperSecFourResolutionsTemporalQualityScalability

テンポラルおよび品質のスケーラブルな SVC ストリームに対して許可される最大マクロブロック処理レートを指定します。すべてのレイヤーが 4 つの異なる解像度で構成されている場合、すべてのレイヤーで合計されます。

wMaxMBperSecOneResolutionTemporalSpatialScalability

WORD メンバー wMaxMBperSecOneResolutionTemporalSpatialScalability を定義します。

wMaxMBperSecTwoResolutionsTemporalSpatialScalability

WORD メンバー wMaxMBperSecTwoResolutionsTemporalSpatialScalability を定義します。

wMaxMBperSecThreeResolutionsTemporalSpatialScalablity

WORD メンバー wMaxMBperSecThreeResolutionsTemporalSpatialScalablity を定義します。

wMaxMBperSecFourResolutionsTemporalSpatialScalability

WORD メンバー wMaxMBperSecFourResolutionsTemporalSpatialScalability を定義します。

wMaxMBperSecOneResolutionFullScalability

完全にスケーラブルなストリームに対して許可される最大マクロブロック処理レートを指定します。すべてのレイヤーの解像度が同じ場合に、すべてのレイヤーで合計されます。

wMaxMBperSecTwoResolutionsFullScalability

すべてのレイヤーが 2 つの異なる解像度で構成されている場合に、すべてのレイヤーで合計される、完全にスケーラブルなストリームに対して許可される最大マクロブロック処理速度を指定します。

wMaxMBperSecThreeResolutionsFullScalability

すべてのレイヤーが 3 つの異なる解像度で構成されている場合に、すべてのレイヤーで合計される、完全にスケーラブルなストリームに対して許可される最大マクロブロック処理速度を指定します。

wMaxMBperSecFourResolutionsFullScalability

すべてのレイヤーが 4 つの異なる解像度で構成されている場合に、すべてのレイヤーで合計される、完全にスケーラブルなストリームに対して許可される最大マクロブロック処理速度を指定します。

注釈

KS_H264VIDEOINFO構造体には、フレームとフォーマット記述子情報が含まれています。

要件

要件
サポートされている最小のクライアント Windows 8
サポートされている最小のサーバー Windows Server 2012
Header ksmedia.h (Ksmedia.h を含む)

こちらもご覧ください

KS_DATAFORMAT_H264VIDEOINFO

KS_DATARANGE_H264_VIDEO