Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

DirectX Video Acceleration

From Wikipedia, the free encyclopedia
API for hardware video acceleration
"DXVA" redirects here. For the radio station in Butuan, Philippines, seeDXVA-FM.

DirectX Video Acceleration (DXVA) is aMicrosoftAPI specification for theMicrosoft Windows andXbox 360 platforms that allowsvideodecoding to behardware-accelerated. Thepipeline allows certainCPU-intensive operations such asiDCT,motion compensation anddeinterlacing to be offloaded to theGPU. DXVA 2.0 allows more operations, includingvideo capturing andprocessing operations, to be hardware-accelerated as well.

DXVA works in conjunction with thevideo rendering model used by thevideo card. DXVA 1.0, which was introduced as a standardized API withWindows 2000 (DirectX 7), and is currently available onWindows 98 or later, can use either theoverlay rendering mode orVMR 7/9.[1] DXVA 2.0, available only onWindows Vista,Windows 7,Windows 8 and later OSs, integrates withMedia Foundation (MF) and uses theEnhanced Video Renderer (EVR) present in MF.[1]

Overview

[edit]

The DXVA is used bysoftware 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 anddevice driverinterfaces (DDIs) that thegraphic driver 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 furthervideo post-processing might be applied to it before being rendered to the device. The resulting pipeline is usable in aDirectShow-compatible application.

DXVA specifies theMotion Compensation DDI, which specifies the interfaces foriDCT operations,Huffman coding,motion compensation,alpha blending, inversequantization,color space conversion and frame-rate conversion operations, among others.[2][3] It also includes three sub-specifications: Deinterlacing DDI, COPP DDI and ProcAmp DDI.[4] TheDeinterlacing DDI specifies the callbacks fordeinterlacing operations. The COPP (Certified Output Protection Protocol) DDI functions allow the pipeline to be secured forDRM-protected media, by specifyingencryption functions. The ProcAmp DDI is used to acceleratepost-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 aDirectShow client, but are supplied ascallback functions to the video renderer. As such, the renderer plays a very important role in anchoring the pipeline.

DXVA support forH.264 was added inDirectX 9.0c.

DXVA on Windows Vista and later

[edit]

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.[5] 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 theWindows Display Driver Model drivers, which limits DXVA 2.0 toWindows Vista,Windows Server 2008,[1][5]Windows 7,Windows Server 2008 R2 andWindows 8. OnWindows XP andWindows 2000, programs can use DXVA 1.0. DXVA 2.0 allowsEnhanced Video Renderer as the video renderer only on Vista, Windows 7, and Windows 8.[1] (With Windows XP, DXVA-Rendering is possible with VMR9 and the well-known Overlay Mixer.) DXVA integrates withMedia Foundation and allows DXVA pipelines to be exposed asMedia Foundation Transforms (MFTs). Even decoder pipelines or post-processing pipelines can be exposed as MFTs, which can be used by theMedia Foundation topology loader to create a full media playback pipeline. DXVA 1.0 is emulated using DXVA 2.0.[1] DXVA 2.0 does not include the COPP DDI, rather it usesPVP for protected content.Windows 7 implements DXVA-HD[6] if the driver complies withWDDM 1.1.

DXVA2 implementations: native and copy-back

[edit]

DXVA2 implementations come in two variants: native andcopy-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.[7]

Software

[edit]

See also

[edit]

References

[edit]
  1. ^abcde"DirectX Video Acceleration 2.0". Retrieved2007-10-24.
  2. ^"Introduction to DirectX VA". Archived fromthe original on 2008-04-23. Retrieved2007-10-24.
  3. ^"Microsoft DirectX Video Acceleration (DirectX VA) support". Retrieved2007-10-24.
  4. ^"DirectX Video Acceleration". Archived fromthe original on 2008-04-08. Retrieved2007-10-24.
  5. ^ab"What's New in DirectShow". Retrieved2007-10-24.
  6. ^"DXVA-HD (Windows)".msdn.microsoft.com. Retrieved21 April 2018.
  7. ^S, Ganesh T."ASRock's High-End Vision 3D 252B HTPC Review".anandtech.com. Retrieved21 April 2018.
  8. ^"CoreAVC Changelog | CoreCodec". Archived fromthe original on 2011-07-04. Retrieved2011-04-09.
  9. ^"Daum tv팟".tvpot.daum.net. Archived fromthe original on 22 May 2017. Retrieved21 April 2018.
  10. ^"VLC GPU Decoding - VideoLAN Wiki".wiki.videolan.org. Retrieved21 April 2018.
  11. ^"How to turn off the hardware acceleration on Windows Media Player".

External links

[edit]
Graphics and UI
Audio
Multimedia
Web
Data access
Networking
Communication
Administration and
management
Component model
Libraries
Device drivers
Security
.NET
Software factories
IPC
Accessibility
Text and multilingual
support
Management
tools
Apps
Shell
Services
File systems
Server
Architecture
Security
Compatibility
API
Games
Discontinued
Games
Apps
Others
Spun off to
Microsoft Store
Theory
Applications
Implementations
Architectures
Related
Retrieved from "https://en.wikipedia.org/w/index.php?title=DirectX_Video_Acceleration&oldid=1276685049"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2025 Movatter.jp