DirectX 12 zapewnia dziś API do obsługi przyspieszenia GPU dla wielu aplikacji i gier, wliczając w to Video Decoding, Video Processing i Motion Estimation. Teraz Microsoft ogłasza, że D3D12 otrzymał dodatkowo funkcjonalność Video Encode dla istniejącej rodziny API wideo. Zawiera ona zestaw interfejsów, które pozwalają deweloperom wykonywać kodowanie wideo przy użyciu silników wideo akcelerowanych przez GPU.
Funkcja ta zapewnia aplikacjom nowy sposób implementacji kodowania wideo zgodnie z zasadami i stylem DirectX 12. API wykorzystuje tekstury ID3D12Resource i kompresuje je do bufora ID3D12Resource. Dostępne dziś kodeki to H264 i HEVC. Obecnie dostępne są tylko DXGI_FORMAT_NV12 i DXGI_FORMAT_P010 w zależności od sterownika. Zgodnie z zasadami i stylem DirectX 12 ramki referencyjne są zarządzane jawnie, a ich pamięć jest w pełni śledzona przez użytkownika API.
Poniżej lista platform sprzętowych, które obsługują Video Encode API dla obu wspomnianych kodeków, oraz ich minimalne wymagania wersji sterownika:
Dostawca | Wspierane platformy | Minimalna wersja sterownika wideo |
---|---|---|
AMD |
Radeon RX 5000 series lub wyższa Ryzen 2xxxx series lub wyższa |
Obecnie rozwijana. ETA: Q2 2022 |
Intel |
Tiger Lake Ice Lake Alder Lake (od początku 2022) |
v30.0.100.9955 |
NVIDIA |
GeForce GTX 10xx lub wyższe GeForce RTX 20xx lub wyższe Quadro RTX NVIDIA RTX |
v471.41 |
Video Encode API jest dołączany jako część Windows 11. Można go też znaleźć w DirectX 12 Agility SDK (wersja 1.700.10-preview lub nowsza).