VIDEO_ZOOM_RECT属性

拡張ビデオ レンダラー (EVR) のビデオ ミキサーのソース四角形を指定します。 ソースの四角形は、ミキサーがターゲット サーフェスに照らしているビデオ フレームの部分です。

データ型

Byte array

解説

この属性の値は MFVideoNormalizedRect 構造体です。

ソースの四角形は、正規化された座標系に対して定義されます。この座標系では、ビデオ フレーム全体が座標 {0, 0, 1, 1} の四角形を占有します。 ソース四角形はビデオ フレーム内に収まる必要があります。ソース四角形の座標の範囲は (0...1) です。

標準の EVR 発表者は、ミキサーにこの属性を設定します。 属性を設定するには、次の操作を行います。

  1. ミキサーの属性ストアを取得するには、ミキサーで IMFTransform::GetAttributes を呼び出します。
  2. IMFAttributes::SetBlob を呼び出して、ミキサーにVIDEO_ZOOM_RECT属性を設定します。 値は MFVideoNormalizedRect 構造体です。

カスタム EVR 発表者では、この属性を使用して 、IMFVideoDisplayControl::SetVideoPosition メソッドを 実装できます。 詳細については、「 ソース四角形と変換先の四角形」を参照してください。

この属性の GUID 定数は、strmiids.lib からエクスポートされます。

次の使用例は、ミキサーのソース四角形を設定します。

HRESULT SetMixerSourceRect(IMFTransform *pMixer, const MFVideoNormalizedRect& nrcSource)
{
    if (pMixer == NULL)
    {
        return E_POINTER;
    }

    IMFAttributes *pAttributes = NULL;

    HRESULT hr = pMixer->GetAttributes(&pAttributes);
    if (SUCCEEDED(hr))
    {
        hr = pAttributes->SetBlob(VIDEO_ZOOM_RECT, (const UINT8*)&nrcSource, sizeof(nrcSource));
        pAttributes->Release();
    }
    return hr;
}

要件

要件
サポートされている最小のクライアント
Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows Server 2008 [デスクトップ アプリのみ]
ヘッダー
Evr.h

関連項目

Media Foundation 属性のアルファベット順リスト

強化されたビデオ レンダラー属性

EVR 発表者を作成する方法

IMFAttributes::GetBlob

IMFAttributes::SetBlob