Share via


MFInitVideoFormat 関数 (mfapi.h)

[この API はサポートされていないため、今後変更または使用できない可能性があります。 アプリケーションでは MFVIDEOFORMAT 構造体の使用を避け、代わりにメディア・タイプ属性を使用する必要があります。 詳細については、「 ビデオ メディアの種類」を参照してください。

DVD、アナログ テレビ、ATSC デジタル テレビなどの標準的なビデオ形式の MFVIDEOFORMAT 構造体を初期化します。

構文

HRESULT MFInitVideoFormat(
  [out] MFVIDEOFORMAT         *pVideoFormat,
  [in]  MFStandardVideoFormat type
);

パラメーター

[out] pVideoFormat

MFVIDEOFORMAT 構造体へのポインター。 関数は、type パラメーターで指定されたビデオ形式に基づいて構造体メンバーを入力します。

[in] type

MFStandardVideoFormat 列挙体のメンバーとして指定されたビデオ形式。

戻り値

この関数が成功すると、 S_OKが返されます。 そうでない場合は、HRESULT エラー コードを返します。

解説

メモ Windows 7 より前のバージョンでは、この関数は evr.dll からエクスポートされていました。 Windows 7 以降では、この関数は mfplat.dll からエクスポートされ、evr.dll は mfplat.dll に呼び出すスタブ関数をエクスポートします。 詳細については、「 Windows 7 でのライブラリの変更」を参照してください。
 

次の例では、標準のビデオ形式のメディアタイプオブジェクトを作成します。

// Creates a media type for a standard video format.
HRESULT CreateStandardVideoMediaType(MFStandardVideoFormat type, IMFMediaType **ppMediaType)
{
    IMFMediaType *pMediaType = NULL;

    MFVIDEOFORMAT format;

    // Fill in the MFVIDEOFORMAT structure for the video format.
    HRESULT hr = MFInitVideoFormat(&format, type);
    if (FAILED(hr))
    {
        goto done;
    }

    // Create a new (empty) media type.
    hr = MFCreateMediaType(&pMediaType);
    if (FAILED(hr))
    {
        goto done;
    }

    // Initialize the media type from the MFVIDEOFORMAT structure.
    hr = MFInitMediaTypeFromMFVideoFormat(pMediaType, &format, sizeof(format));
    if (FAILED(hr))
    {
        goto done;
    }

    // Return the pointer to the caller.
    *ppMediaType = pMediaType;
    (*ppMediaType)->AddRef();

done:
    SafeRelease(&pMediaType);
    return hr;
}

要件

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

関連項目

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

メディアの種類

ビデオ メディアの種類