I noticed that for me OpenGL renderer string: AMD Radeon RX 550 / 550 Series (radeonsi, polaris12, ACO, DRM 3.61, 6.12.26-x64) OpenGL core profile version string: 4.6 (Core Profile) Mesa 25.2.0-devel (git-4f07092bdb) OpenGL core profile shading language version string: 4.60 hwaccel vdpau was FASTER in cingg, and even more reliable For 1080p60 h264 I hit 120 fps in default window on 1440x900 screen, vo x11 for 4k60 fps HDR I hit 30 fps in window, 25 fullscreen! Vaapi was like 15 fps in window max. So I benched them all bash-5.1$ ~/bin/ffmpeg8-vk -hwaccel vaapi -i ~/K38_sdcard1/Documents/iPhone11_4K-recorder_59.940HDR10.mov -c:v rawvideo -f nut /dev/null ffmpeg version N-118190-g8bb682d454 Copyright (c) 2000-2025 the FFmpeg developers built with gcc 11.2.0 (GCC) configuration: --enable-opencl --disable-debug --enable-libx265 --enable-libx264 --enable-gpl --enable-libplacebo --enable-vulkan --enable-libshaderc --enable-libzimg --enable-libaom --enable-libdav1d --enable-libsoxr --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-gnutls --enable-libass --enable-libbluray --enable-libcdio --enable-frei0r --enable-libgsm --enable-openal --enable-libopus --enable-librtmp --enable-libsnappy --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libv4l2 --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp libavutil 60. 2.100 / 60. 2.100 libavcodec 62. 0.101 / 62. 0.101 libavformat 62. 0.100 / 62. 0.100 libavdevice 62. 0.100 / 62. 0.100 libavfilter 11. 0.100 / 11. 0.100 libswscale 9. 0.100 / 9. 0.100 libswresample 6. 0.100 / 6. 0.100 libpostproc 59. 1.100 / 59. 1.100 [aist#0:1/pcm_s16le @ 0xb437e80] Guessed Channel Layout: stereo Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/home/guest/K38_sdcard1/Documents/iPhone11_4K-recorder_59.940HDR10.mov': Metadata: major_brand : qt minor_version : 0 compatible_brands: qt creation_time : 2020-12-18T22:20:29.000000Z com.apple.quicktime.creationdate: 2020-12-18T17:20:29-0500 com.apple.quicktime.location.ISO6709: +33.4233-084.5802/ Duration: 00:00:19.16, start: 0.000000, bitrate: 69140 kb/s Stream #0:0[0x1](und): Video: hevc (Main 10) (hvc1 / 0x31637668), yuv420p10le(pc, bt2020nc/bt2020/smpte2084), 3840x2160, 64166 kb/s, 59.92 fps, 59.94 tbr, 600 tbn (default) Metadata: creation_time : 2020-12-18T22:20:29.000000Z handler_name : Core Media Video vendor_id : [0][0][0][0] encoder : HEVC Stream #0:1[0x2](und): Audio: pcm_s16le (lpcm / 0x6D63706C), 48000 Hz, stereo, s16, 1536 kb/s (default) Metadata: creation_time : 2020-12-18T22:20:29.000000Z handler_name : Core Media Audio vendor_id : [0][0][0][0] File '/dev/null' already exists. Overwrite? [y/N] y Stream mapping: Stream #0:0 -> #0:0 (hevc (native) -> rawvideo (native)) Stream #0:1 -> #0:1 (pcm_s16le (native) -> vorbis (libvorbis)) Press [q] to stop, [?] for help Output #0, nut, to '/dev/null': Metadata: major_brand : qt minor_version : 0 compatible_brands: qt com.apple.quicktime.location.ISO6709: +33.4233-084.5802/ com.apple.quicktime.creationdate: 2020-12-18T17:20:29-0500 encoder : Lavf62.0.100 Stream #0:0: Video: rawvideo (RGB[15] / 0xF424752), p010le(pc, bt2020nc/bt2020/smpte2084, progressive), 3840x2160, q=2-31, 7457502 kb/s, 59.94 fps, 60k tbn (default) Metadata: encoder : Lavc62.0.101 rawvideo creation_time : 2020-12-18T22:20:29.000000Z X-Language : und handler_name : Core Media Video vendor_id : [0][0][0][0] Stream #0:1: Audio: vorbis (oV[0][0] / 0x566F), 48000 Hz, stereo, fltp (default) Metadata: encoder : Lavc62.0.101 libvorbis creation_time : 2020-12-18T22:20:29.000000Z X-Language : und handler_name : Core Media Audio vendor_id : [0][0][0][0] [out#0/nut @ 0xb436240] video:27896400KiB audio:232KiB subtitle:0KiB other streams:0KiB global headers:4KiB muxing overhead: 0.000255% frame= 1148 fps= 12 q=-0.0 Lsize=27896703KiB time=00:00:19.16 bitrate=11921748.9kbits/s speed= 0.2x VAAPI = 12 fps. bash-5.1$ ~/bin/ffmpeg8-vk -hwaccel vdpau -i ~/K38_sdcard1/Documents/iPhone11_4K-recorder_59.940HDR10.mov -c:v rawvideo -f nut /dev/null ffmpeg version N-118190-g8bb682d454 Copyright (c) 2000-2025 the FFmpeg developers built with gcc 11.2.0 (GCC) configuration: --enable-opencl --disable-debug --enable-libx265 --enable-libx264 --enable-gpl --enable-libplacebo --enable-vulkan --enable-libshaderc --enable-libzimg --enable-libaom --enable-libdav1d --enable-libsoxr --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-gnutls --enable-libass --enable-libbluray --enable-libcdio --enable-frei0r --enable-libgsm --enable-openal --enable-libopus --enable-librtmp --enable-libsnappy --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libv4l2 --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp libavutil 60. 2.100 / 60. 2.100 libavcodec 62. 0.101 / 62. 0.101 libavformat 62. 0.100 / 62. 0.100 libavdevice 62. 0.100 / 62. 0.100 libavfilter 11. 0.100 / 11. 0.100 libswscale 9. 0.100 / 9. 0.100 libswresample 6. 0.100 / 6. 0.100 libpostproc 59. 1.100 / 59. 1.100 [aist#0:1/pcm_s16le @ 0xc259e80] Guessed Channel Layout: stereo Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/home/guest/K38_sdcard1/Documents/iPhone11_4K-recorder_59.940HDR10.mov': Metadata: major_brand : qt minor_version : 0 compatible_brands: qt creation_time : 2020-12-18T22:20:29.000000Z com.apple.quicktime.creationdate: 2020-12-18T17:20:29-0500 com.apple.quicktime.location.ISO6709: +33.4233-084.5802/ Duration: 00:00:19.16, start: 0.000000, bitrate: 69140 kb/s Stream #0:0[0x1](und): Video: hevc (Main 10) (hvc1 / 0x31637668), yuv420p10le(pc, bt2020nc/bt2020/smpte2084), 3840x2160, 64166 kb/s, 59.92 fps, 59.94 tbr, 600 tbn (default) Metadata: creation_time : 2020-12-18T22:20:29.000000Z handler_name : Core Media Video vendor_id : [0][0][0][0] encoder : HEVC Stream #0:1[0x2](und): Audio: pcm_s16le (lpcm / 0x6D63706C), 48000 Hz, stereo, s16, 1536 kb/s (default) Metadata: creation_time : 2020-12-18T22:20:29.000000Z handler_name : Core Media Audio vendor_id : [0][0][0][0] File '/dev/null' already exists. Overwrite? [y/N] y Stream mapping: Stream #0:0 -> #0:0 (hevc (native) -> rawvideo (native)) Stream #0:1 -> #0:1 (pcm_s16le (native) -> vorbis (libvorbis)) Press [q] to stop, [?] for help Output #0, nut, to '/dev/null': Metadata: major_brand : qt minor_version : 0 compatible_brands: qt com.apple.quicktime.location.ISO6709: +33.4233-084.5802/ com.apple.quicktime.creationdate: 2020-12-18T17:20:29-0500 encoder : Lavf62.0.100 Stream #0:0: Video: rawvideo (RGB[15] / 0xF424752), p016le(pc, bt2020nc/bt2020/smpte2084, progressive), 3840x2160, q=2-31, 11932003 kb/s, 59.94 fps, 60k tbn (default) Metadata: encoder : Lavc62.0.101 rawvideo creation_time : 2020-12-18T22:20:29.000000Z X-Language : und handler_name : Core Media Video vendor_id : [0][0][0][0] Stream #0:1: Audio: vorbis (oV[0][0] / 0x566F), 48000 Hz, stereo, fltp (default) Metadata: encoder : Lavc62.0.101 libvorbis creation_time : 2020-12-18T22:20:29.000000Z X-Language : und handler_name : Core Media Audio vendor_id : [0][0][0][0] [out#0/nut @ 0xc258240] video:27896400KiB audio:232KiB subtitle:0KiB other streams:0KiB global headers:4KiB muxing overhead: 0.000255% frame= 1148 fps= 17 q=-0.0 Lsize=27896703KiB time=00:00:19.16 bitrate=11921748.9kbits/s speed=0.283x VDPAU = 17 fps bash-5.1$ RADV_PERFTEST=video_decode ~/bin/ffmpeg8-vk -hwaccel vulkan -i ~/K38_sdcard1/Documents/iPhone11_4K-recorder_59.940HDR10.mov -c:v rawvideo -f nut /dev/null ffmpeg version N-118190-g8bb682d454 Copyright (c) 2000-2025 the FFmpeg developers built with gcc 11.2.0 (GCC) configuration: --enable-opencl --disable-debug --enable-libx265 --enable-libx264 --enable-gpl --enable-libplacebo --enable-vulkan --enable-libshaderc --enable-libzimg --enable-libaom --enable-libdav1d --enable-libsoxr --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-gnutls --enable-libass --enable-libbluray --enable-libcdio --enable-frei0r --enable-libgsm --enable-openal --enable-libopus --enable-librtmp --enable-libsnappy --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libv4l2 --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp libavutil 60. 2.100 / 60. 2.100 libavcodec 62. 0.101 / 62. 0.101 libavformat 62. 0.100 / 62. 0.100 libavdevice 62. 0.100 / 62. 0.100 libavfilter 11. 0.100 / 11. 0.100 libswscale 9. 0.100 / 9. 0.100 libswresample 6. 0.100 / 6. 0.100 libpostproc 59. 1.100 / 59. 1.100 [aist#0:1/pcm_s16le @ 0xb4f6e80] Guessed Channel Layout: stereo Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/home/guest/K38_sdcard1/Documents/iPhone11_4K-recorder_59.940HDR10.mov': Metadata: major_brand : qt minor_version : 0 compatible_brands: qt creation_time : 2020-12-18T22:20:29.000000Z com.apple.quicktime.creationdate: 2020-12-18T17:20:29-0500 com.apple.quicktime.location.ISO6709: +33.4233-084.5802/ Duration: 00:00:19.16, start: 0.000000, bitrate: 69140 kb/s Stream #0:0[0x1](und): Video: hevc (Main 10) (hvc1 / 0x31637668), yuv420p10le(pc, bt2020nc/bt2020/smpte2084), 3840x2160, 64166 kb/s, 59.92 fps, 59.94 tbr, 600 tbn (default) Metadata: creation_time : 2020-12-18T22:20:29.000000Z handler_name : Core Media Video vendor_id : [0][0][0][0] encoder : HEVC Stream #0:1[0x2](und): Audio: pcm_s16le (lpcm / 0x6D63706C), 48000 Hz, stereo, s16, 1536 kb/s (default) Metadata: creation_time : 2020-12-18T22:20:29.000000Z handler_name : Core Media Audio vendor_id : [0][0][0][0] File '/dev/null' already exists. Overwrite? [y/N] y Stream mapping: Stream #0:0 -> #0:0 (hevc (native) -> rawvideo (native)) Stream #0:1 -> #0:1 (pcm_s16le (native) -> vorbis (libvorbis)) Press [q] to stop, [?] for help Output #0, nut, to '/dev/null': Metadata: major_brand : qt minor_version : 0 compatible_brands: qt com.apple.quicktime.location.ISO6709: +33.4233-084.5802/ com.apple.quicktime.creationdate: 2020-12-18T17:20:29-0500 encoder : Lavf62.0.100 Stream #0:0: Video: rawvideo (RGB[15] / 0xF424752), p010le(pc, bt2020nc/bt2020/smpte2084, progressive), 3840x2160, q=2-31, 7457502 kb/s, 59.94 fps, 60k tbn (default) Metadata: encoder : Lavc62.0.101 rawvideo creation_time : 2020-12-18T22:20:29.000000Z X-Language : und handler_name : Core Media Video vendor_id : [0][0][0][0] Stream #0:1: Audio: vorbis (oV[0][0] / 0x566F), 48000 Hz, stereo, fltp (default) Metadata: encoder : Lavc62.0.101 libvorbis creation_time : 2020-12-18T22:20:29.000000Z X-Language : und handler_name : Core Media Audio vendor_id : [0][0][0][0] [out#0/nut @ 0xb4f5240] video:27896400KiB audio:232KiB subtitle:0KiB other streams:0KiB global headers:4KiB muxing overhead: 0.000255% frame= 1148 fps= 35 q=-0.0 Lsize=27896703KiB time=00:00:19.16 bitrate=11921748.9kbits/s speed=0.579x VULKAN = 35 fps! So, after THIS result I *definitely* will look into Vulkan hwaccel! :)