FFmpeg Develops Vulkan Hardware Acceleration For Apple ProRes RAW Codec
([Multimedia] 3 Hours Ago
Vulkan + Apple ProRes RAW)
- Reference: 0001568356
- News link: https://www.phoronix.com/news/FFmpeg-Vulkan-ProRes-RAW
- Source link:
The upcoming [1]FFmpeg 8.0 release continues to increase in excitement with this weekend Vulkan hardware acceleration for Apple's ProRes RAW codec being merged.
FFmpeg developer Lynne continues to be quite impressive with expanding the Vulkan capabilities of this widely-used, open-source multimedia library. Beyond the encode/decode support for different codecs like AV1 and VP9 backed by formal Vulkan API extensions, Lynne has also worked out using the Vulkan API with custom compute shaders to accelerate other codecs. There has been a [2]FFV1 Vulkan decoder merged earlier this year, among other improvements, while merged this weekend was leveraging the Vulkan API to accelerate hardware decoding of Apple ProRes RAW content.
Lynne landed [3]lavc: add a ProRes RAW Vulkan hwaccel :
"lavc: add a ProRes RAW Vulkan hwaccel
This commit adds a ProRes RAW hardware implementation written in Vulkan. Both version 0 and version 1 streams are supported. The implementation is highly parallelized, with 512 invocations dispatched per every tile, with generally 4k tiles on a 5.8k stream.
Thanks to unlord for the 8-point iDCT.
Benchmark for a generic 5.8k RAW HQ file:
6900XT: 63fps
7900XTX: 84fps
6000 Ada: 120fps
Intel: 9fps"
This is in addition to FFmpeg recently landing [4]Vulkan AV1 encoding and VP9 decoding in time for the upcoming FFmpeg 8.0 release.
[1] https://www.phoronix.com/search/FFmpeg+8.0
[2] https://www.phoronix.com/news/FFmpeg-Vulkan-FFV1
[3] https://git.ffmpeg.org/gitweb/ffmpeg.git/commit/75aeffb1c62af276c493d7731e73a05f9959aa81
[4] https://www.phoronix.com/news/FFmpeg-Vulkan-AV1-Encoding
FFmpeg developer Lynne continues to be quite impressive with expanding the Vulkan capabilities of this widely-used, open-source multimedia library. Beyond the encode/decode support for different codecs like AV1 and VP9 backed by formal Vulkan API extensions, Lynne has also worked out using the Vulkan API with custom compute shaders to accelerate other codecs. There has been a [2]FFV1 Vulkan decoder merged earlier this year, among other improvements, while merged this weekend was leveraging the Vulkan API to accelerate hardware decoding of Apple ProRes RAW content.
Lynne landed [3]lavc: add a ProRes RAW Vulkan hwaccel :
"lavc: add a ProRes RAW Vulkan hwaccel
This commit adds a ProRes RAW hardware implementation written in Vulkan. Both version 0 and version 1 streams are supported. The implementation is highly parallelized, with 512 invocations dispatched per every tile, with generally 4k tiles on a 5.8k stream.
Thanks to unlord for the 8-point iDCT.
Benchmark for a generic 5.8k RAW HQ file:
6900XT: 63fps
7900XTX: 84fps
6000 Ada: 120fps
Intel: 9fps"
This is in addition to FFmpeg recently landing [4]Vulkan AV1 encoding and VP9 decoding in time for the upcoming FFmpeg 8.0 release.
[1] https://www.phoronix.com/search/FFmpeg+8.0
[2] https://www.phoronix.com/news/FFmpeg-Vulkan-FFV1
[3] https://git.ffmpeg.org/gitweb/ffmpeg.git/commit/75aeffb1c62af276c493d7731e73a05f9959aa81
[4] https://www.phoronix.com/news/FFmpeg-Vulkan-AV1-Encoding
shmerl