atributo MF_SA_D3D_AWARE
Especifica si una transformación de Media Foundation (MFT) admite la aceleración de vídeo DirectX (DXVA). Este atributo solo se aplica a las MFP de vídeo.
Tipo de datos
BOOL almacenado como UINT32
Comentarios
Para consultar este atributo, llame a IMFTransform::GetAttributes para obtener el almacén de atributos global del MFT. Si GetAttributes se realiza correctamente, llame a IMFAttributes::GetUINT32.
Este atributo indica al cliente si el MFT puede usar el vídeo de Direct3D 9:
- Si el atributo es distinto de cero, el cliente puede proporcionar al MFT un puntero a la interfaz IDirect3DDeviceManager9 antes de que se inicie el streaming. Para ello, el cliente envía el mensaje MFT_MESSAGE_SET_D3D_MANAGER al MFT. El cliente no es necesario para enviar este mensaje.
- Si este atributo es cero (FALSE), MFT no admite el vídeo de Direct3D 9 y el cliente no debe enviar el mensaje MFT_MESSAGE_SET_D3D_MANAGER al MFT.
El valor predeterminado de este atributo es FALSE. Trate este atributo como de solo lectura. No cambie el valor; el MFT omitirá los cambios realizados en el valor.
Para obtener más información sobre la implementación de este atributo en un MFT personalizado, vea MFT compatible con Direct3D.
La constante GUID de este atributo se exporta desde mfuuid.lib.
Ejemplos
El código siguiente comprueba si un MFT admite DXVA.
// Returns TRUE is an MFT supports DirectX Video Acceleration.
BOOL IsTransformD3DAware(IMFTransform *pMFT)
{
BOOL bD3DAware = FALSE;
IMFAttributes *pAttributes = NULL;
HRESULT hr = pMFT->GetAttributes(&pAttributes);
if (SUCCEEDED(hr))
{
bD3DAware = MFGetAttributeUINT32(pAttributes, MF_SA_D3D_AWARE, FALSE);
pAttributes->Release();
}
return bD3DAware;
}
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible |
Windows Vista [aplicaciones de escritorio | Aplicaciones para UWP] |
Servidor mínimo compatible |
Windows Server 2008 [aplicaciones de escritorio | Aplicaciones para UWP] |
Encabezado |
|
Consulte también