IDirectXVideoProcessorService::GetVideoProcessorDeviceGuids メソッド (dxva2api.h)

グラフィックス ハードウェアでサポートされているビデオ プロセッサを識別する GUID の配列を取得します。

構文

HRESULT GetVideoProcessorDeviceGuids(
  [in]  const DXVA2_VideoDesc *pVideoDesc,
  [out] UINT                  *pCount,
  [out] GUID                  **pGuids
);

パラメーター

[in] pVideoDesc

ビデオ コンテンツを記述する DXVA2_VideoDesc 構造体へのポインター。

[out] pCount

GUID の数を受け取ります。

[out] pGuids

GUID の配列を受け取ります。 配列のサイズは pCount パラメーターで取得されます。 メソッドは、配列のメモリを割り当てます。 呼び出し元は 、CoTaskMemFree を呼び出してメモリを解放する必要があります。

戻り値

このメソッドは、成功すると S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。

解説

次のビデオ プロセッサ GUID が事前に定義されています。

GUID 説明
DXVA2_VideoProcBobDevice Bob deinterlace デバイス。 このデバイスでは、"bob" アルゴリズムを使用してビデオのインターレースを解除します。 Bob アルゴリズムでは、1 つのフィールド内の線を補間することによって、欠落しているフィールド行が作成されます。
DXVA2_VideoProcProgressiveDevice プログレッシブ ビデオ デバイス。 このデバイスは、デインターレース アルゴリズムを必要としないプログレッシブ ビデオで使用できます。
DXVA2_VideoProcSoftwareDevice 参照 (ソフトウェア) デバイス。
 

グラフィックス デバイスでは、追加のベンダー固有の GUID を定義できます。 ドライバーは、品質の降順で GUID の一覧を提供します。 最も品質の高いモードは、最初に一覧に表示されます。 各モードの機能を取得するには、 IDirectXVideoProcessorService::GetVideoProcessorCaps を呼び出し、モードの GUID を渡します。


    // Initialize the video descriptor.

    g_VideoDesc.SampleWidth                         = VIDEO_MAIN_WIDTH;
    g_VideoDesc.SampleHeight                        = VIDEO_MAIN_HEIGHT;
    g_VideoDesc.SampleFormat.VideoChromaSubsampling = DXVA2_VideoChromaSubsampling_MPEG2;
    g_VideoDesc.SampleFormat.NominalRange           = DXVA2_NominalRange_16_235;
    g_VideoDesc.SampleFormat.VideoTransferMatrix    = EX_COLOR_INFO[g_ExColorInfo][0];
    g_VideoDesc.SampleFormat.VideoLighting          = DXVA2_VideoLighting_dim;
    g_VideoDesc.SampleFormat.VideoPrimaries         = DXVA2_VideoPrimaries_BT709;
    g_VideoDesc.SampleFormat.VideoTransferFunction  = DXVA2_VideoTransFunc_709;
    g_VideoDesc.SampleFormat.SampleFormat           = DXVA2_SampleProgressiveFrame;
    g_VideoDesc.Format                              = VIDEO_MAIN_FORMAT;
    g_VideoDesc.InputSampleFreq.Numerator           = VIDEO_FPS;
    g_VideoDesc.InputSampleFreq.Denominator         = 1;
    g_VideoDesc.OutputFrameFreq.Numerator           = VIDEO_FPS;
    g_VideoDesc.OutputFrameFreq.Denominator         = 1;

    // Query the video processor GUID.

    UINT count;
    GUID* guids = NULL;

    hr = g_pDXVAVPS->GetVideoProcessorDeviceGuids(&g_VideoDesc, &count, &guids);

要件

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

関連項目

DXVA ビデオ処理

IDirectXVideoProcessorService