次の方法で共有


MFCalculateBitmapImageSize 関数 (mfapi.h)

ビデオ形式の画像サイズを取得します。 BITMAPINFOHEADER 構造体を指定すると、この関数は biSizeImage メンバーの正しい値を計算します。

構文

HRESULT MFCalculateBitmapImageSize(
  [in]  const BITMAPINFOHEADER *pBMIH,
  [in]  UINT32                 cbBufSize,
  [out] UINT32                 *pcbImageSize,
  [out] BOOL                   *pbKnown
);

パラメーター

[in] pBMIH

形式を記述する BITMAPINFOHEADER 構造体へのポインター。

[in] cbBufSize

pBMIH バッファーのサイズ (バイト単位)。 サイズには、 BITMAPINFOHEADER 構造に続くカラー マスクまたはパレット エントリが含まれます。

[out] pcbImageSize

イメージ サイズをバイト単位で受け取ります。

[out] pbKnown

関数がビデオ形式を認識する場合は、 値 TRUE を 受け取ります。 それ以外の場合は、 値 FALSE を受け取ります。 このパラメーターは、NULL でもかまいません。

戻り値

関数は HRESULT を返します。 有効な値を次の表に示しますが、これ以外にもあります。

リターン コード 説明
S_OK
関数が正常に実行されました。
E_INVALIDARG
BITMAPINFOHEADER 構造体が無効であるか、cbBufSize の値が小さすぎます。

解説

この関数を呼び出す前に、 BITMAPINFOHEADER 構造体の少なくとも次のメンバーを設定する必要があります。

  • biCompression
  • biBitCount
  • biWidth
  • biHeight
また、 biCompressionBI_BITFIELDS場合は、 BITMAPINFOHEADER 構造体の後にカラー マスクの配列が続く必要があります。

BITMAPINFOHEADER 構造体がビデオ形式ではない形式を記述している場合、この関数は失敗します。 たとえば、biCompressonBI_JPEGまたは BI_PNGの場合、失敗します

この機能は、Windows Media Format 11 SDK 再頒布可能コンポーネントがインストールされている場合、次のプラットフォームで使用できます。

  • Windows XP Service Pack 2 (SP2) 以降。
  • KB900325 (Windows XP Media Center Edition 2005) と KB925766 (2006 年 10 月 Windows XP Media Center Edition の更新プログラムロールアップ) がインストールされている Windows XP Media Center Edition 2005。

要件

   
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー mfapi.h
Library Mfplat.lib
[DLL] Mfplat.dll

関連項目

メディア ファンデーション機能