After the successful Appimage build with OneVPL for QSV on Alder
Lake (i7-12700/Arc A750), the time has come as proof of contest to
test if it also works on legacy Intel iGPU hardware.
Extracted from the Fixed-function Quick Sync Video format support
for HEVC one should expect
https://en.wikipedia.org/wiki/Intel_Quick_Sync_Video#Hardware_decoding_and_encoding
- The Skylake microarchitecture implementation adds a full
fixed-function H.265/HEVC 8-bit 4:2:0 decoding and encoding
acceleration, hybrid and partial HEVC 10-bit decoding
acceleration,
- The Kaby Lake, Coffee Lake, Whiskey Lake and Comet Lake
microarchitectures implementation adds full fixed-function
H.265/HEVC 10-bit 4:2:0 decoding and encoding acceleration,
1) Sky Lake:
------------
CPU:
Info: quad core model: Intel Core i7-6700K bits: 64 type: MT MCP
cache:
Graphics:
Device-1: Intel HD Graphics 530 driver: i915 v: kernel
(Device-2: NVIDIA GM206 [GeForce GTX 960] driver: N/A)
~/Application> ./cin-x86_64.AppImage
Cinelerra Infinity - built: Nov 20 2024 22:0
Loaded hdv09_04.m2t (tff interlaced)
Rendered to hevc_qsv_8b420
---------------------------
libva info: VA-API version 1.22.0
libva info: Trying to open /usr/lib64/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_22
libva info: va_openDriver() returns 0
Render::render_single: Session finished.
** rendered 5972 frames in 66.227 secs, 90.175 fps
ffprobe -hide_banner hdv09_04_hevc_qsv_8b420.mp4
Stream #0:0[0x1](und): Video: hevc (Main) (hev1 / 0x31766568),
yuvj420p(pc, smpte170m/unknown/unknown, top coded first
(swapped)), 1440x1080 [SAR 4:3 DAR 16:9], 4918 kb/s, 25 fps, 25
tbr, 12800 tbn (default)
Test hevc_qsv_10b420 failed
---------------------------
libva info: VA-API version 1.22.0
libva info: Trying to open /usr/lib64/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_22
libva info: va_openDriver() returns 0
[hevc_qsv @ 0x7fe508025980] Low power mode is unsupported
[hevc_qsv @ 0x7fe508025980] Current pixel format is unsupported
[hevc_qsv @ 0x7fe508025980] some encoding parameters are not
supported by the QSV runtime. Please double check the input
parameters.
FFMPEG::open_encoder err: Function not implemented
int FFMPEG::open_encoder(const char*, const char*):
open failed
hevc_qsv:/run/media/terje/video/hdv09_04_hevc_qsv_10b420.mp4
Render::render_single: Session finished.
2) Kaby Lake
-----------
CPU:
Info: quad core model: Intel Core i7-8550U bits: 64 type: MT MCP
cache:
Graphics:
Device-1: Intel UHD Graphics 620 driver: i915 v: kernel
~/Application> ./cin-x86_64.AppImage
Cinelerra Infinity - built: Nov 20 2024 22:0
Loaded hdv09_04.m2t (tff interlaced)
Rendered to hevc_qsv_8b420
---------------------------
libva info: VA-API version 1.22.0
libva info: Trying to open /usr/lib64/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_22
libva info: va_openDriver() returns 0
Render::render_single: Session finished.
** rendered 5972 frames in 59.564 secs, 100.262 fps
ffprobe -hide_banner hdv09_04_hevc_qsv_8b420.mp4
Stream #0:0[0x1](und): Video: hevc (Main) (hev1 / 0x31766568),
yuvj420p(pc, smpte170m/unknown/unknown, top coded first
(swapped)), 1440x1080 [SAR 4:3 DAR 16:9], 4018 kb/s, 25 fps, 25
tbr, 12800 tbn (default)
Rendered to hevc_qsv_10b420
---------------------------
libva info: VA-API version 1.22.0
libva info: Trying to open /usr/lib64/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_22
libva info: va_openDriver() returns 0
Render::render_single: Session finished.
** rendered 5972 frames in 79.061 secs, 75.537 fps
ffprobe -hide_banner hdv09_04_hevc_qsv_10b420.mp4
Stream #0:0[0x1](und): Video: hevc (Main 10) (hev1 / 0x31766568),
yuv420p10le(pc, smpte170m/unknown/unknown, top coded first
(swapped)), 1440x1080 [SAR 4:3 DAR 16:9], 25630 kb/s, 25 fps, 25
tbr, 12800 tbn (default)
Test hevc_qsv_10b422 failed:
----------------------------
libva info: VA-API version 1.22.0
libva info: Trying to open /usr/lib64/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_22
libva info: va_openDriver() returns 0
[hevc_qsv @ 0x7f8e74000bc0] Low power mode is unsupported
[hevc_qsv @ 0x7f8e74000bc0] Current pixel format is unsupported
[hevc_qsv @ 0x7f8e74000bc0] some encoding parameters are not
supported by the QSV runtime. Please double check the input
parameters.
FFMPEG::open_encoder err: Function not implemented
int FFMPEG::open_encoder(const char*, const char*):
open failed
hevc_qsv:/home/terje/Videos/hdv09_04_hevc_qsv_10b422.mp4
Render::render_single: Session finished.
Conclusion:
-------------------
The above simple tests show that the QSV enabled Appimage with
OneVPL works also on legacy and other Intel hardware.