Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Мазмұны
Кіріспе
DirectX Video Acceleration (DXVA) - Microsoft Windows және Xbox 360 платформалары үшін, бейне кодтамасын аппараттық жеделдетуге мүмкіндік беретін Microsoft API спецификациясы. Құбыр желісі CPU-ға көп жүктеме түсіретін iDCT, қозғалыс компенсациясы және деинтерляция сияқты операцияларды GPU-ға жүктеуге мүмкіндік береді. DXVA 2.0 видео түсіру және өңдеу операцияларын қоса алғанда, аппараттық жеделдетуге қосымша мүмкіндіктер ұсынады. DXVA бейнекартада қолданылатын бейне көрсету моделімен бірігіп жұмыс істейді. Windows 2000 (DirectX 7) жүйесінде енгізілген және Windows 98 немесе одан кейінгі нұсқаларында қолжетімді DXVA 1.0, үстіңгі жазылым режимін немесе VMR 7/9-ды пайдалануға болады. Тек Windows Vista, Windows 7, Windows 8 және одан кейінгі операциялық жүйелерде қолжетімді DXVA 2.0, Media Foundation (MF) жүйесімен интеграцияланып, MF-дегі Enhanced Video Renderer (EVR) құралын қолданады. Ол сонымен қатар үш қосымша спецификацияны қамтиды: деинтерляция DDI, COPP DDI және ProcAmp DDI. Деинтерляция DDI деинтерляция операциялары үшін қайырымдылық функцияларын анықтайды. COPP (Certified Output Protection Protocol) DDI функциялары шифрлау функцияларын анықтау арқылы DRM қорғалған медиа үшін құбырдың қауіпсіздігін қамтамасыз етуге мүмкіндік береді. ProcAmp DDI бейнені өңдеуден кейін жылдамдату үшін қолданылады. ProcAmp драйвер модулі аппараттық бейне көрсетуші мен дисплей драйвері арасында орналасқан және декомпрессияланған бейнеге өңдеу сүзгілерін қолдану функцияларын ұсынады. DXVA DDI арқылы ашылған функцияларға DirectShow клиенті тікелей қол жеткізе алмайды, бірақ олар бейне көрсетушіге қайырымдылық функциялары ретінде жіберіледі. Осылайша, көрсету құрылғысы құбырды бекітуде маңызды рөл атқарады. DirectX 9.0c нұсқасында H.264 үшін DXVA қолдауы қосылды.
DirectX Video Acceleration (DXVA) is a Microsoft API specification for the Microsoft Windows and Xbox 360 platforms that allows video decoding to be hardware accelerated. The pipeline allows certain CPU intensive operations such as iDCT, motion compensation and deinterlacing to be offloaded to the GPU. 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. DXVA 1.0, which was introduced as a standardized API with Windows 2000 (DirectX 7), and is currently available on Windows 98 or later, can use either the overlay rendering mode or VMR 7/9. DXVA 2.0, available only on Windows Vista, Windows 7, Windows 8 and later OSs, integrates with Media Foundation (MF) and uses the Enhanced Video Renderer (EVR) present in MF. It also includes three sub specifications: Deinterlacing DDI, COPP DDI and ProcAmp DDI. The Deinterlacing DDI specifies the callbacks for deinterlacing operations. The COPP (Certified Output Protection Protocol) DDI functions allow the pipeline to be secured for DRM protected media, by specifying encryption 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 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.
Windows Vista және одан кейінгі нұсқаларда DXVA
DXVA 2.0 бейне құбыржолын іске асыруды жақсартады және бейне түсіруге арналған Capture DDI сияқты көптеген басқа DDI-лерді қосады. DXVA 1.0-мен ортақ DDI-лер де аппараттық үдету арқылы көбірек операцияларды орындау мүмкіндігімен жаңартылды. Сонымен қатар, DDI функциялары тікелей шалушыларға қолжетімді, оларды бейне рендері арқылы жіберудің қажеті жоқ. Осының арқасында бағдарлама медианы тек кодтау үшін (рендерингсіз) немесе өңдеуден кейін өңдеу және рендеринг үшін (декодтаусыз) құбыржол құра алады. Бұл мүмкіндіктер Windows Display Driver Model драйверлерін қажет етеді, бұл DXVA 2.0-ны Windows Vista және Windows Server 2008 жүйелерімен шектейді, егер драйвер WDDM 1.1 стандартына сәйкес болса.
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 drivers, which limits DXVA 2.0 to Windows Vista, Windows Server 2008, if the driver complies with WDDM 1.1.
DXVA2 іске асырулары: жергілікті және көшірмелеу
DXVA2 іске асырулары екі нұсқада келеді: түпнұсқа және көшіру. Түпнұсқа іске асыруда декодталған бейне көрсетілгенге дейін GPU жадында сақталады. Видеодекодер аралық өңдеу сүзгісіз тікелей бейнекөрсеткішке қосылуы керек. Бейнекөрсеткіш те DXVA-ны қолдауы тиіс, бұл көрсеткіштерді таңдаудағы мүмкіндіктерді шектейді. Көшіру іске асыруда декодталған бейне GPU жадынан CPU жадына көшіріледі. Бұл іске асыру жоғарыда аталған шектеулерге ие емес және әдеттегі бағдарламалық декодер сияқты жұмыс істейді; алайда, егер GPU өз жадын CPU жадына көшіру үшін жеткілікті жылдам болмаса, бейне кекеуі мүмкін. Егер қосымша өңдеу қажет болмаса, түпнұсқа режимі артықшылықты, себебі қосымша көшіру операциялары GPU жадына қосымша жүктеме салады.
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.