IDirectXVideoProcessorService::GetVideoProcessorDeviceGuids-Methode (dxva2api.h)

Ruft ein Array von GUIDs ab, die die von der Grafikhardware unterstützten Videoprozessoren identifizieren.

Syntax

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

Parameter

[in] pVideoDesc

Zeiger auf eine DXVA2_VideoDesc-Struktur , die den Videoinhalt beschreibt.

[out] pCount

Empfängt die Anzahl der GUIDs.

[out] pGuids

Empfängt ein Array von GUIDs. Die Größe des Arrays wird im pCount-Parameter abgerufen. Die -Methode weist den Arbeitsspeicher für das Array zu. Der Aufrufer muss den Arbeitsspeicher durch Aufrufen von CoTaskMemFree freigeben.

Rückgabewert

Wenn diese Methode erfolgreich ist, wird S_OK zurückgegeben. Andernfalls wird ein Fehlercode HRESULT zurückgegeben.

Hinweise

Die folgenden Videoprozessor-GUIDs sind vordefiniert.

GUID Beschreibung
DXVA2_VideoProcBobDevice Bob-Deinterlacegerät. Dieses Gerät verwendet einen "bob"-Algorithmus, um das Video zu deinterlacieren. Bob-Algorithmen erstellen fehlende Feldlinien, indem sie die Linien in einem einzelnen Feld interpolieren.
DXVA2_VideoProcProgressiveDevice Progressives Videogerät. Dieses Gerät ist für progressive Videos verfügbar, für die kein Deinterlace-Algorithmus erforderlich ist.
DXVA2_VideoProcSoftwareDevice Referenzgerät (Software).
 

Das Grafikgerät kann zusätzliche herstellerspezifische GUIDs definieren. Der Treiber stellt die Liste der GUIDs in absteigender Qualitätsreihenfolge bereit. Der Modus mit der höchsten Qualität steht an erster Stelle in der Liste. Um die Funktionen der einzelnen Modus abzurufen, rufen Sie IDirectXVideoProcessorService::GetVideoProcessorCaps auf, und übergeben Sie die GUID für den Modus.

Beispiele


    // 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);

Anforderungen

   
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile dxva2api.h

Weitere Informationen

DXVA-Videoverarbeitung

IDirectXVideoProcessorService