Metodo IDirectXVideoProcessorService::GetVideoProcessorDeviceGuids (dxva2api.h)
Ottiene una matrice di GUID che identificano i processori video supportati dall'hardware grafico.
Sintassi
HRESULT GetVideoProcessorDeviceGuids(
[in] const DXVA2_VideoDesc *pVideoDesc,
[out] UINT *pCount,
[out] GUID **pGuids
);
Parametri
[in] pVideoDesc
Puntatore a una struttura DXVA2_VideoDesc che descrive il contenuto video.
[out] pCount
Riceve il numero di GUID.
[out] pGuids
Riceve una matrice di GUID. Le dimensioni della matrice vengono recuperate nel parametro pCount . Il metodo alloca la memoria per la matrice. Il chiamante deve liberare la memoria chiamando CoTaskMemFree.
Valore restituito
Se questo metodo ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .
Commenti
I GUID del processore video seguenti sono predefiniti.
GUID | Descrizione |
---|---|
DXVA2_VideoProcBobDevice | Dispositivo Bob deinterlace. Questo dispositivo usa un algoritmo "bob" per denterlarlace il video. Gli algoritmi Bob creano righe di campo mancanti interpolando le righe in un singolo campo. |
DXVA2_VideoProcProgressiveDevice | Dispositivo video progressivo. Questo dispositivo è disponibile per il video progressivo, che non richiede un algoritmo deinterlace. |
DXVA2_VideoProcSoftwareDevice | Dispositivo di riferimento (software). |
Il dispositivo grafico può definire GUID specifici del fornitore aggiuntivo. Il driver fornisce l'elenco dei GUID in ordine di qualità decrescente. La modalità con la massima qualità è la prima nell'elenco. Per ottenere le funzionalità di ogni modalità, chiamare IDirectXVideoProcessorService::GetVideoProcessorCaps e passare il GUID per la modalità.
Esempio
// 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);
Requisiti
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2008 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | dxva2api.h |