DirectX Video Accelereration (DXVA) är ett API från Microsoft för Windows 2000/XP/Vista och Xbox 360. Detta gränssnitt gör det möjligt för grafikkort att avlasta processorn genom att ta över en del av arbetet, exempelvis beräkningar av iDCT, rörelsekompensering och färgkorrigering. DXVA 1.0 finns med redan i Windows 2000 (DirectX 9), medan DXVA 2.0 endast är tillgängligt i Windows Vista (DirectX 10). Den senare versionen kan lägga fler arbetsmoment på grafikkortet, exempelvis videoinspelning.

För att det hela ska fungera måste datorn först och främst vara utrustad med ett grafikkort som stödjer DXVA. Vanligtvis handlar det om en modell med ATI Avivo eller Nvidia Purevideo, som båda använder samma funktion i Microsofts operativsystem (likt Direct 3D). Skillnaden ligger istället i vilka DXVA-funktioner de båda teknikerna stödjer, och hur snabbt grafikkorten klarar av att behandla informationen.

Har man väl köpt sig ett grafikkort som klarar av DXVA måste ytterligare några saker klaffa. Det handlar givetvis om videodekodrarna som måste ha stöd för tekniken. En av de mest kända videospelarna är Cyberlink PowerDVD, vars medföljande dekodrar brukar vara först med nya finesser. Microsofts Windows Media Player med tillhörande videodekodrar har också stöd för DXVA.

Det sista som måste fungera är renderaren, det vill säga det DirectShow-filter som tolkar informationen från dekodern och ritar upp bilden på skärmen. DXVA 1.0 fungerar med Video Mixing Renderer (VMR) i version 7 och 9, medan DXVA 2.0 endast fungerar med Vistas Enhanced Video Renderer (EVR). Det gäller alltså att ha koll på vilken renderare videospelaren använder sig av.

För att få en bättre bild av hur Directshow-filtren egentligen fungerar har vi använt Graphedit (från DirectX SDK) för att rita upp följande lilla schematiska bild över videouppspelningen:

En snabb titt på modellen avslöjar hur dataströmmen passerar de olika Directshow-filtren. Filen som innehåller filmen läses in av en splitter, som tolkar informationen och delar upp bitströmmen i olika kanaler, exempelvis en för video och en annan för ljud. Videoinformationen skickas sedan vidare till dekodern, som dekomprimerar bilderna. Den nu råa videodatan skickas tillslut fram till en renderare som ritar upp videon på skärmen.

Nu när vi vet hur uppspelningen fungerar är det dags att påbörja testningen. Låt oss presentera fyra moderna grafikkort från ATI och Nvidia.