MF_NALU_LENGTH_INFORMATION 属性

サンプル内の NALU の長さを示します。 これは、圧縮された H.264 または H.265 サンプルで設定される MF BLOB です。

データの種類

BLOB

解説

この属性を圧縮されたサンプルに存在させるには、MF_NALU_LENGTH_SET を対応するエンコーダーまたはデコーダー MFT に適切に設定する必要があります。

サンプルで MF_NALU_LENGTH_INFORMATION を BLOB に設定し、サンプル内の NALU ごとに 1 つの DWORD を設定します。 たとえば、AUD (9 バイト)、SPS (25 バイト)、PPS (10 バイト)、IDR slice1 (50 k)、IDR slice2 (60 k) が存在する場合、BLOB には値がそれぞれ 9、25、10、50 k、60 k の 5 個の DWORD が存在する必要があります。

以下に BLOB を設定するコードを示します。rgdwNALULengthInfo は DWORD 型の配列で、uiNaluLengthIdxBLOB に設定される有効な NALU の長さです。

m_spSample->SetBlob( MF_NALU_LENGTH_INFORMATION, 
                    (UINT8*) m_wpParent->m_pdwNALULengthInfo, 
                    sizeof(DWORD)*uiNaluLengthIdx ), 
                    done );

デコーダーへの入力として MF_NALU_LENGTH_INFORMATION が与えられた場合、デコーダーはその NALU の長さを使用してパフォーマンスを向上させ、デコードの待機時間を短縮します。

エンコーダーから MF_NALU_LENGTH_INFORMATION が出力される場合、その NALU の長さは、多重化操作または後続のデコードのパフォーマンスを向上させるために使用できます。

要件

要件 Value
サポートされている最小のクライアント
Windows 8 [デスクトップ アプリ | UWP アプリ]
サポートされている最小のサーバー
Windows Server 2012 [デスクトップ アプリ | UWP アプリ]
ヘッダー
Mfidl.h

関連項目

Media Foundation 属性のアルファベット順の一覧

メディアの種類の属性