DXVA
   HOME

TheInfoList



OR:

DirectX Video Acceleration (DXVA) is a
Microsoft Microsoft Corporation is an American multinational corporation and technology company, technology conglomerate headquartered in Redmond, Washington. Founded in 1975, the company became influential in the History of personal computers#The ear ...
API An application programming interface (API) is a connection between computers or between computer programs. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how to build ...
specification for the
Microsoft Windows Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
and
Xbox 360 The Xbox 360 is a home video game console developed by Microsoft. As the successor to the Xbox (console), original Xbox, it is the second console in the Xbox#Consoles, Xbox series. It was officially unveiled on MTV on May 12, 2005, with detail ...
platforms that allows
video Video is an Electronics, electronic medium for the recording, copying, playback, broadcasting, and display of moving picture, moving image, visual Media (communication), media. Video was first developed for mechanical television systems, whi ...
decoding to be hardware-accelerated. The
pipeline A pipeline is a system of Pipe (fluid conveyance), pipes for long-distance transportation of a liquid or gas, typically to a market area for consumption. The latest data from 2014 gives a total of slightly less than of pipeline in 120 countries ...
allows certain
CPU A central processing unit (CPU), also called a central processor, main processor, or just processor, is the primary processor in a given computer. Its electronic circuitry executes instructions of a computer program, such as arithmetic, log ...
-intensive operations such as
iDCT A discrete cosine transform (DCT) expresses a finite sequence of data points in terms of a sum of cosine functions oscillating at different frequencies. The DCT, first proposed by Nasir Ahmed in 1972, is a widely used transformation technique in ...
,
motion compensation Motion compensation in computing is an algorithmic technique used to predict a frame in a video given the previous and/or future frames by accounting for motion of the camera and/or objects in the video. It is employed in the encoding of video ...
and
deinterlacing Deinterlacing is the process of converting interlaced video into a non-interlaced or Progressive scan, progressive form. Interlaced video signals are commonly found in analog television, VHS, Laserdisc, digital television (HDTV) when in the 1080 ...
to be offloaded to the
GPU A graphics processing unit (GPU) is a specialized electronic circuit designed for digital image processing and to accelerate computer graphics, being present either as a discrete video card or embedded on motherboards, mobile phones, personal ...
. DXVA 2.0 allows more operations, including video capturing and processing operations, to be hardware-accelerated as well. DXVA works in conjunction with the video rendering model used by the
video card A graphics card (also called a video card, display card, graphics accelerator, graphics adapter, VGA card/VGA, video adapter, display adapter, or colloquially GPU) is a computer expansion card that generates a feed of graphics output to a displa ...
. DXVA 1.0, which was introduced as a standardized API with
Windows 2000 Windows 2000 is a major release of the Windows NT operating system developed by Microsoft, targeting the server and business markets. It is the direct successor to Windows NT 4.0, and was Software release life cycle#Release to manufacturing (RT ...
( DirectX 7), and is currently available on
Windows 98 Windows 98 is a consumer-oriented operating system developed by Microsoft as part of its Windows 9x family of Microsoft Windows operating systems. It was the second operating system in the 9x line, as the successor to Windows 95. It was Software ...
or later, can use either the overlay rendering mode or VMR 7/9. DXVA 2.0, available only on
Windows Vista Windows Vista is a major release of the Windows NT operating system developed by Microsoft. It was the direct successor to Windows XP, released five years earlier, which was then the longest time span between successive releases of Microsoft W ...
,
Windows 7 Windows 7 is a major release of the Windows NT operating system developed by Microsoft. It was Software release life cycle#Release to manufacturing (RTM), released to manufacturing on July 22, 2009, and became generally available on October 22, ...
,
Windows 8 Windows 8 is a major release of the Windows NT operating system developed by Microsoft. It was Software release life cycle#Release to manufacturing (RTM), released to manufacturing on August 1, 2012, made available for download via Microsoft ...
and later OSs, integrates with
Media Foundation Media Foundation (MF) is a COM-based multimedia framework pipeline and infrastructure platform for digital media in Windows Vista, Windows 7, Windows 8, Windows 8.1, Windows 10, and Windows 11. It is the intended replacement for Microsoft Direc ...
(MF) and uses the
Enhanced Video Renderer Media Foundation (MF) is a Component Object Model, COM-based multimedia framework pipeline and infrastructure platform for digital media in Windows Vista, Windows 7, Windows 8, Windows 8.1, Windows 10, and Windows 11. It is the intended replaceme ...
(EVR) present in MF.


Overview

The DXVA is used by software video decoders to define a codec-specific pipeline for hardware-accelerated decoding and rendering of the codec. The pipeline starts at the CPU which is used for parsing the media stream and conversion to DXVA-compatible structures. DXVA specifies a set of operations that can be hardware-accelerated and
device driver In the context of an operating system, a device driver is a computer program that operates or controls a particular type of device that is attached to a computer or automaton. A driver provides a software interface to hardware devices, enabli ...
interfaces Interface or interfacing may refer to: Academic journals * ''Interface'' (journal), by the Electrochemical Society * '' Interface, Journal of Applied Linguistics'', now merged with ''ITL International Journal of Applied Linguistics'' * '' Inter ...
(DDIs) that the
graphic driver Graphics () are visual images or designs on some surface, such as a wall, canvas, screen, paper, or stone, to inform, illustrate, or entertain. In contemporary usage, it includes a pictorial representation of the data, as in design and manufact ...
can implement to accelerate the operations. If the codec needs to do any of the defined operations, it can use these interfaces to access the hardware-accelerated implementation of these operations. If the graphic driver does not implement one or more of the interfaces, it is up to the codec to provide a software fallback for it. The decoded video is handed over to the hardware video renderer, where further
video post-processing The term post-processing (or postproc for short) is used in the video and film industry for quality-improvement image processing (specifically digital image processing) methods used in video playback devices, such as stand-alone DVD-Video players; ...
might be applied to it before being rendered to the device. The resulting pipeline is usable in a
DirectShow DirectShow (sometimes abbreviated as DS or DShow), codename Quartz, is a multimedia framework and API produced by Microsoft for software developers to perform various operations with media files or streams. It is the replacement for Microsoft's ea ...
-compatible application. DXVA specifies the
Motion Compensation Motion compensation in computing is an algorithmic technique used to predict a frame in a video given the previous and/or future frames by accounting for motion of the camera and/or objects in the video. It is employed in the encoding of video ...
DDI, which specifies the interfaces for
iDCT A discrete cosine transform (DCT) expresses a finite sequence of data points in terms of a sum of cosine functions oscillating at different frequencies. The DCT, first proposed by Nasir Ahmed in 1972, is a widely used transformation technique in ...
operations,
Huffman coding In computer science and information theory, a Huffman code is a particular type of optimal prefix code that is commonly used for lossless data compression. The process of finding or using such a code is Huffman coding, an algorithm developed by ...
,
motion compensation Motion compensation in computing is an algorithmic technique used to predict a frame in a video given the previous and/or future frames by accounting for motion of the camera and/or objects in the video. It is employed in the encoding of video ...
,
alpha blending In computer graphics, alpha compositing or alpha blending is the process of combining one image with a background to create the appearance of partial or full transparency. It is often useful to render picture elements (pixels) in separate pass ...
, inverse quantization, color space conversion and frame-rate conversion operations, among others. It also includes three sub-specifications: Deinterlacing DDI, COPP DDI and ProcAmp DDI. The
Deinterlacing Deinterlacing is the process of converting interlaced video into a non-interlaced or Progressive scan, progressive form. Interlaced video signals are commonly found in analog television, VHS, Laserdisc, digital television (HDTV) when in the 1080 ...
DDI specifies the callbacks for
deinterlacing Deinterlacing is the process of converting interlaced video into a non-interlaced or Progressive scan, progressive form. Interlaced video signals are commonly found in analog television, VHS, Laserdisc, digital television (HDTV) when in the 1080 ...
operations. The COPP (Certified Output Protection Protocol) DDI functions allow the pipeline to be secured for DRM-protected media, by specifying
encryption In Cryptography law, cryptography, encryption (more specifically, Code, encoding) is the process of transforming information in a way that, ideally, only authorized parties can decode. This process converts the original representation of the inf ...
functions. The ProcAmp DDI is used to accelerate post-processing video. The ProcAmp driver module sits between the hardware video renderer and the display driver, and it provides functions for applying post-processing filters on the decompressed video. The functions exposed by DXVA DDIs are not accessible directly by a
DirectShow DirectShow (sometimes abbreviated as DS or DShow), codename Quartz, is a multimedia framework and API produced by Microsoft for software developers to perform various operations with media files or streams. It is the replacement for Microsoft's ea ...
client, but are supplied as callback functions to the video renderer. As such, the renderer plays a very important role in anchoring the pipeline. DXVA support for H.264 was added in DirectX 9.0c.


DXVA on Windows Vista and later

DXVA 2.0 enhances the implementation of the video pipeline and adds a host of other DDIs, including a Capture DDI for video capture. The DDIs it shares with DXVA 1.0 are also enhanced with the ability to use hardware acceleration of more operations. Also, the DDI functions are directly available to callers and need not be mediated by the video renderer. As such, a program can also create a pipeline for simply decoding the media (without rendering) or post-processing and rendering (without decoding). These features require the
Windows Display Driver Model Windows Display Driver Model (WDDM, initially LDDM as Longhorn Display Driver Model and then WVDDM in times of Windows Vista) is the graphic driver architecture for video card device driver, drivers running Microsoft Windows versions beginning with ...
drivers, which limits DXVA 2.0 to
Windows Vista Windows Vista is a major release of the Windows NT operating system developed by Microsoft. It was the direct successor to Windows XP, released five years earlier, which was then the longest time span between successive releases of Microsoft W ...
,
Windows Server 2008 Windows Server 2008, codenamed "Longhorn Server" (alternatives: "Windows Vista Server" or "Windows Server Vista"), is the seventh major version of the Windows NT operating system produced by Microsoft to be released under the Windows Server b ...
,
Windows 7 Windows 7 is a major release of the Windows NT operating system developed by Microsoft. It was Software release life cycle#Release to manufacturing (RTM), released to manufacturing on July 22, 2009, and became generally available on October 22, ...
,
Windows Server 2008 R2 Windows Server 2008 R2, codenamed "Windows Server 7" or "Windows Server 2008 Release 2", is the eighth major version of the Windows NT operating system produced by Microsoft to be released under the Windows Server brand name. It was release ...
and
Windows 8 Windows 8 is a major release of the Windows NT operating system developed by Microsoft. It was Software release life cycle#Release to manufacturing (RTM), released to manufacturing on August 1, 2012, made available for download via Microsoft ...
. On
Windows XP Windows XP is a major release of Microsoft's Windows NT operating system. It was released to manufacturing on August 24, 2001, and later to retail on October 25, 2001. It is a direct successor to Windows 2000 for high-end and business users a ...
and
Windows 2000 Windows 2000 is a major release of the Windows NT operating system developed by Microsoft, targeting the server and business markets. It is the direct successor to Windows NT 4.0, and was Software release life cycle#Release to manufacturing (RT ...
, programs can use DXVA 1.0. DXVA 2.0 allows
Enhanced Video Renderer Media Foundation (MF) is a Component Object Model, COM-based multimedia framework pipeline and infrastructure platform for digital media in Windows Vista, Windows 7, Windows 8, Windows 8.1, Windows 10, and Windows 11. It is the intended replaceme ...
as the video renderer only on Vista, Windows 7, and Windows 8. (With Windows XP, DXVA-Rendering is possible with VMR9 and the well-known Overlay Mixer.) DXVA integrates with
Media Foundation Media Foundation (MF) is a COM-based multimedia framework pipeline and infrastructure platform for digital media in Windows Vista, Windows 7, Windows 8, Windows 8.1, Windows 10, and Windows 11. It is the intended replacement for Microsoft Direc ...
and allows DXVA pipelines to be exposed as ''Media Foundation Transforms'' (''MFTs''). Even decoder pipelines or post-processing pipelines can be exposed as MFTs, which can be used by the
Media Foundation Media Foundation (MF) is a COM-based multimedia framework pipeline and infrastructure platform for digital media in Windows Vista, Windows 7, Windows 8, Windows 8.1, Windows 10, and Windows 11. It is the intended replacement for Microsoft Direc ...
topology loader to create a full media playback pipeline. DXVA 1.0 is emulated using DXVA 2.0. DXVA 2.0 does not include the COPP DDI, rather it uses PVP for protected content.
Windows 7 Windows 7 is a major release of the Windows NT operating system developed by Microsoft. It was Software release life cycle#Release to manufacturing (RTM), released to manufacturing on July 22, 2009, and became generally available on October 22, ...
implements DXVA-HD if the driver complies with WDDM 1.1.


DXVA2 implementations: native and copy-back

DXVA2 implementations come in two variants: native and copy-back. With native implementation, the decoded video stays in GPU memory until it has been displayed. The video decoder must be connected to the video renderer with no intermediary processing filter. The video renderer must also support DXVA, which gives less freedom in the choice of renderers. With copy-back implementation, the decoded video is copied from GPU memory back to the CPU's memory. This implementation doesn't have the limitations mentioned above and acts similarly to a normal software decoder; however, video stuttering will occur if the GPU is not fast enough to copy its memory back to the CPU's memory. Native mode is advantageous unless there is a need for customized processing, as the additional copy-back operations will increase GPU memory load.


Software

*
Adobe Flash Adobe Flash (formerly Macromedia Flash and FutureSplash) is a mostly discontinuedAlthough it is discontinued by Adobe Inc., for the Chinese market it is developed by Zhongcheng and for the international enterprise market it is developed by Ha ...
v10.3 and later * Boxee * CoreAVC v2.5.0 and later * Daum PotPlayer *
DivX DIVX (Digital Video Express) is a discontinued digital video format. Created in part by Circuit City, it was an unsuccessful attempt to create an alternative to video rental in the United States. The format's poor reception from consumers resu ...
H.264 Decoder v1.2 and later *DVDFab Media Player 3 *
ffdshow-tryouts ffdshow is an open-source unmaintained codec library that is mainly used for decoding of video in the MPEG-4 ASP (e.g. encoded with DivX or Xvid) and H.264/MPEG-4 AVC video formats, but it supports numerous other video and audio formats as we ...
revision 3185 and later * Freemake Video Converter v2.2 and later *
Kodi Kodi may refer to: Arts, entertainment, and media * KODI, a radio station in Cody, Wyoming, USA * Kodi (film), ''Kodi'' (film), India, 2016 * Kodi, a dog in the 2004 film ''Balto III: Wings of Change'' Other uses * Kodi (software), an open sour ...
*
Media Player Classic Home Cinema Media Player Classic (MPC), Media Player Classic - Home Cinema (MPC-HC), and Media Player Classic - Black Edition (MPC-BE) are a family of free and open-source, compact, lightweight, and customizable media players for 32- and 64-bit Microsoft Win ...
*
MediaPortal MediaPortal is an open-source media player and digital video recorder software project, often considered an alternative to Windows Media Center. It provides a 10-foot user interface for performing typical PVR/TiVo functionality, including playi ...
* mpv (DXVA 2.0 only) * Nero Multimedia Suite (Nero Kwik Media, Nero MediaHub, Nero Showtime) *
Plex Plex Inc. is an American software company that runs its namesake over-the-top ad-supported streaming television service and develops media server software that lets users stream their personal media collections to their devices. The company is ...
* PowerDVD *
RealPlayer RealPlayer, formerly RealAudio Player, RealOne Player and RealPlayer G2, is a cross-platform media player (software), media player app, developed by RealNetworks. The media player is compatible with numerous container file formats of the multimed ...
*
VLC media player VLC media player (previously the VideoLAN Client) is a free and open-source software, free and open-source, software portability, portable, cross-platform media player software and streaming media Server (computing), server developed by the Vide ...
v1.1 and later (DXVA 2.0 only) * WinDVD *
Windows Media Player Windows Media Player (WMP, officially referred to as Windows Media Player Legacy to retronym, distinguish it from Windows Media Player (2022), the new Windows Media Player introduced with Windows 11) is the first media player (application soft ...
v6.4 and later * Windows Media Player 11 ( WMV3 only) * Windows Media Player 12 *
HandBrake HandBrake is a free and open-source transcoder for digital video files. It was originally developed in 2003 by Eric Petit to make ripping DVDs to a data storage device easier. HandBrake's backend contains comparatively little original code; t ...


See also

* AMD Unified Video Decoder * Distributed Codec Engine *
Intel Clear Video Intel Clear Video is a semiconductor intellectual property core which implements some steps of some video decompression algorithms. The scope is to calculate these on the SIP core rather than on the CPU. Intel Clear Video is paired with integrate ...
*
Media Foundation Media Foundation (MF) is a COM-based multimedia framework pipeline and infrastructure platform for digital media in Windows Vista, Windows 7, Windows 8, Windows 8.1, Windows 10, and Windows 11. It is the intended replacement for Microsoft Direc ...
*
Nvidia PureVideo PureVideo is Nvidia's hardware SIP core that performs video decoding. PureVideo is integrated into some of the Nvidia GPUs, and it supports hardware decoding of multiple video codec standards: MPEG-2, VC-1, H.264, HEVC, and AV1. PureVideo occu ...
* OpenMAX * VDPAU *
Video Acceleration API Video Acceleration API (VA-API) is an open source application programming interface that allows applications such as VLC media player or GStreamer to use hardware video acceleration capabilities, usually provided by the graphics processing unit ...
* X-Video Bitstream Acceleration *
X-Video Motion Compensation X-Video Motion Compensation (XvMC), is an extension of the X video extension, X video extension (Xv) for the X Window System. The XvMC API allows video programs to offload portions of the video decoding process to the graphics processing unit, GPU ...


References


External links


DirectX Video Acceleration
utility listing DXVA modes of which the given computer is capable {{DEFAULTSORT:Directx Video Acceleration Microsoft application programming interfaces Video Acceleration DirectX Video Acceleration Video acceleration Device drivers Hardware acceleration