vulkan video decoding: radv status

I've been working the past couple of weeks with an ffmpeg developer (Lynne) doing Vulkan video decode bringup on radv.

The current status of this work is in a branch[1]. This work is all against the current EXT decode beta extensions in the spec.

Khronos has released the final specs for these extensions. This work is rebased onto the final KHR form and is in a merge request for radv[2].

This contains an initial implementation of H264 and H265 decoding for AMD GPUs from TONGA to NAVI2x. It passes the basic conformance tests but fails some of the more complicated ones, but it has decoded the streams we've been throwing at it using ffmpeg.


git clone

git checkout radv-vulkan-video-prelim-decode

mkdir build

meson build -Dvulkan-beta=true -Dvulkan-drivers=amd -Dvideo-codecs=h264dec,h265dec --prefix=<prefix>

cd build


ninja install


export VK_ICD_FILENAMES=<prefix>/share/vulkan/icd.d/radeon_icd.x86_64.json

For prelim branch[1]:


For merge branch[2]:

export RADV_PERFTEST=video_decode


This should show support for VK_KHR_video_queue, VK_KHR_video_decode_queue, VK_EXT_video_decode_h264 and VK_EXT_video_decode_h265.




  1. This is not related to whatever the AMD AMF library is using, right? Though I think AMF depends on AMDVLK...

    1. No AMF is some proprietary AMD stuff. I've no idea what AMD's plans for vulkan video are, this is just radv.


Post a Comment

Popular posts from this blog

tinygrad + rusticl + aco: why not?

nvk: the kernel changes needed

video decode: crossing the streams