RADV Vulkan Video Making Progress On H.264 Encoding
With getting a handle on the RADV Vulkan Video decode support for GPU-accelerated acceleration for the newly minted extensions, Airlie turned his focus to video encoding.
👁 Image
The Khronos Group overview of current and planned Vulkan Video extensions.
Vulkan Video encoding for this open-source Radeon driver proved more challenging and involved porting more code over from the Radeon VA-API driver as well as accommodating for AMD VCN encoder engine differences. FFmpeg developer Lynne worked out the FFmpeg-side Vulkan Video encode usage.
Per Airlie's blog, things are beginning to work but will take more time to iron out:
"Lynne meanwhile had written the initial ffmpeg side implementation, and today we threw them at each other, and polished off a lot of sharp edges. We were rewarded with valid encoded frames.
The code at this point is only doing I-frame encoding, we will work on P/B frames when we get a chance.
There are also a bunch of hacks and workarounds for API/hw mismatches, that I need to consult with Vulkan spec and AMD teams about, but we have a good starting point to move forward from."
