Hi,
Which h264 render profile should i use for Intel ARC gpu so i have gpu accelerated render?
And which option should i select in "Preferences > Prefomance > Use HW Device"?
My understanding is that the Intel ARC gpu was just released in December 2024/January 2025 so you may be the first to even try this!
(1) First question is which Cinelerra executable are you using? An AppImage dated 20241231 ? A package from https://github.com/einhander/cin-gg-packages/releases ? Or doing your own build (always the best option when you have the latest hardware and good grapics card) ? Or the AppImage at https://cinelerra-gg.org/download/images/CinGG-20241120-x86_64-IntelHW.AppImagee ?
(2) If not using the 20241231 AppImage, for "Use HW Device", you can best determine which to use by installing "vainfo" available in the libva-utils package on your computer and then execute that to see what your hardware is capable of. Then if capable select "vaapi" for "Use HW Device". Refer to this manual section for many details: https://cinelerra-gg.org/download/CinelerraGG_Manual/Hardware_video_acceleration.html
(3) The render profile to use, assuming your specific software/hardware is capable would be one of the h264 formats that contain the word "vaapi" such as h264_vaapi.mp4.
I have tested vaapi and qsv hwaccel rendering as working on Arc A750 with the following two Cingg versions that are built with oneVPL (libvpl):
1) CinGG-20241120-x86_64.AppImage
* vaapi and qsv works on openSUSE Slowroll, may also work but not tested? on non-SUSE distributions
2) cinelerra-5.1-20250104.suse15.x86_64.rpm
* vaapi and qsv works on openSUSE Leap 15.6
Short procedure example:
File > Render
File Format: FFMPEG mp4
Video wrench:
|
=> Video Preset window
Compression: h264_vaapi_8b420.mp4 or h264_qsv_8b420.mp4
Keep the default frame parameters
(or optional remove "#" prefix comment for "global_quality" for a higher bit-rate/quality)
-----------
For a hdv 1080i (light) input file the rendering speeds on my system and hardware were
197 - 225 fps (vaapi)
240 -242 fps (qsv)
My understanding is that the Intel ARC gpu was just released in December 2024/January 2025 so you may be the first to even try this!
I believe it was earlier because they've been selling laptops with integrated ARC graphics since early 2024, I guess.
(1) First question is which Cinelerra executable are you using? An AppImage dated 20241231 ? A package from https://github.com/einhander/cin-gg-packages/releases ? Or doing your own build (always the best option when you have the latest hardware and good grapics card) ? Or the AppImage at https://cinelerra-gg.org/download/images/CinGG-20241120-x86_64-IntelHW.AppImagee ?
I'm using Appimage 20240131 from here: https://www.cinelerra-gg.org/downloads/#packages
(2) If not using the 20241231 AppImage, for "Use HW Device", you can best determine which to use by installing "vainfo" available in the libva-utils package on your computer and then execute that to see what your hardware is capable of. Then if capable select "vaapi" for "Use HW Device". Refer to this manual section for many details: https://cinelerra-gg.org/download/CinelerraGG_Manual/Hardware_video_acceleration.html
Here is the output:
$ vainfo Trying display: wayland libva info: VA-API version 1.22.0 libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so libva info: Found init function __vaDriverInit_1_22 libva info: va_openDriver() returns 0 vainfo: VA-API version: 1.22 (libva 2.22.0) vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 24.3.4 () vainfo: Supported profile and entrypoints VAProfileNone : VAEntrypointVideoProc VAProfileMPEG2Simple : VAEntrypointVLD VAProfileMPEG2Main : VAEntrypointVLD VAProfileH264Main : VAEntrypointVLD VAProfileH264Main : VAEntrypointEncSlice VAProfileH264High : VAEntrypointVLD VAProfileH264High : VAEntrypointEncSlice VAProfileJPEGBaseline : VAEntrypointVLD VAProfileJPEGBaseline : VAEntrypointEncPicture VAProfileH264ConstrainedBaseline: VAEntrypointVLD VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice VAProfileVP8Version0_3 : VAEntrypointVLD VAProfileHEVCMain : VAEntrypointVLD VAProfileHEVCMain : VAEntrypointEncSlice VAProfileHEVCMain10 : VAEntrypointVLD VAProfileHEVCMain10 : VAEntrypointEncSlice VAProfileVP9Profile0 : VAEntrypointVLD VAProfileVP9Profile0 : VAEntrypointEncSlice VAProfileVP9Profile1 : VAEntrypointVLD VAProfileVP9Profile1 : VAEntrypointEncSlice VAProfileVP9Profile2 : VAEntrypointVLD VAProfileVP9Profile2 : VAEntrypointEncSlice VAProfileVP9Profile3 : VAEntrypointVLD VAProfileVP9Profile3 : VAEntrypointEncSlice VAProfileHEVCMain12 : VAEntrypointVLD VAProfileHEVCMain422_10 : VAEntrypointVLD VAProfileHEVCMain422_12 : VAEntrypointVLD VAProfileHEVCMain444 : VAEntrypointVLD VAProfileHEVCMain444 : VAEntrypointEncSlice VAProfileHEVCMain444_10 : VAEntrypointVLD VAProfileHEVCMain444_10 : VAEntrypointEncSlice VAProfileHEVCMain444_12 : VAEntrypointVLD VAProfileHEVCSccMain : VAEntrypointVLD VAProfileHEVCSccMain : VAEntrypointEncSlice VAProfileHEVCSccMain10 : VAEntrypointVLD VAProfileHEVCSccMain10 : VAEntrypointEncSlice VAProfileHEVCSccMain444 : VAEntrypointVLD VAProfileHEVCSccMain444 : VAEntrypointEncSlice VAProfileAV1Profile0 : VAEntrypointVLD VAProfileAV1Profile0 : VAEntrypointEncSlice VAProfileHEVCSccMain444_10 : VAEntrypointVLD VAProfileHEVCSccMain444_10 : VAEntrypointEncSlice
(3) The render profile to use, assuming your specific software/hardware is capable would be one of the h264 formats that contain the word "vaapi" such as h264_vaapi.mp4.
i tried h264_vaapi.mp4 instead of h264.mp4, but it always fails with error like can't open the file (see attachment).
Yeah, the Intel Arc-A series was released in 2022, while the latest Arc-B series was released in Dec 2024.
I get similar vaapi rendering errors with the CinGG-20241231-x86_64.AppImage, while the
CinGG-20241120-x86_64-IntelHW.AppImage (built on this IntelHW) works fine for me.
This is the exact link (I had spelled it wrong in my original comment, sorry). Terje working with Andrew was kind enough to help develop this specifically for Intel newer hardware. Hopefully you are at or above one of any of the newer Operating System distros (as long as it is at or above the level that Terje created this on). Just try it to find out!
https://cinelerra-gg.org/download/images/CinGG-20241120-x86_64-IntelHW.AppImage
HI,
i tried CinGG-20241120-x86_64-IntelHW.AppImage but no luck.
I also tried to set `export CIN_HW_DEV=vaapi` or empty `export CIN_HW_DEV=`,
and i also tried different vaapi render profiles for av1 or hevc codecs,
but it fails anyway with:
Failed to initialise VAAPI connection: -1 (unknown libva error). Failed to create a HW device.
$ /home/hom/Downloads/CinGG-20241120-x86_64-IntelHW.AppImage /home/hom/Video/5332591803705075210.webm Cinelerra Infinity - built: Nov 20 2024 22:06:05 git://git.cinelerra-gg.org/goodguy/cinelerra.git (c) 2006-2019 Heroine Virtual Ltd. by Adam Williams 2007-2020 mods for Cinelerra-GG by W.P.Morrow aka goodguy 2003-2017 mods for Cinelerra-CV by CinelerraCV team 2015-2024 mods for Cinelerra-GG by Cinelerra-GG team Libav version: Lavc61.3.100 Cinelerra is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. There is absolutely no warranty for Cinelerra. BC_DisplayInfo::gl_fb_config failed FFMPEG::open_decoder: some stream times estimated: /home/hom/Video/5332591803705075210.webm FFMPEG::open_decoder: some stream times estimated: /home/hom/Video/5332591803705075210.webm FFMPEG::open_decoder: some stream times estimated: /home/hom/Video/5332591803705075210.webm FFMPEG::open_decoder: some stream times estimated: /home/hom/Video/5332591803705075210.webm FFMPEG::open_decoder: some stream times estimated: /home/hom/Video/5332591803705075210.webm FFMPEG::open_decoder: some stream times estimated: /home/hom/Video/5332591803705075210.webm void AWindowGUI::update_asset_list(): Warning: /home/hom/Video/5332591803705075210.webm dimensions 512x512 exceed OpenGL texture limit 0 FFMPEG::open_decoder: some stream times estimated: /home/hom/Video/5332591803705075210.webm ##### tried with defaults in vaapi profile settings ##### [AVHWDeviceContext @ 0x7229189384c0] Failed to initialise VAAPI connection: -1 (unknown libva error). Failed to create a HW device. err: Input/output error [h264_vaapi @ 0x722918014980] Specified pixel format nv12 is not supported by the h264_vaapi encoder. [h264_vaapi @ 0x722918014980] Supported pixel formats: [h264_vaapi @ 0x722918014980] vaapi FFMPEG::open_encoder err: Invalid argument int FFMPEG::open_encoder(const char*, const char*): open failed h264_vaapi:/home/hom/Downloads/cin-video.mp4 Render::render_single: Session finished. ##### tried with cin_pix_fmt=vaapi in profile settings ##### [AVHWDeviceContext @ 0x7228c40783c0] Failed to initialise VAAPI connection: -1 (unknown libva error). Failed to create a HW device. err: Input/output error [h264_vaapi @ 0x7228c4075b00] A hardware frames reference is required to associate the encoding device. FFMPEG::open_encoder err: Invalid argument int FFMPEG::open_encoder(const char*, const char*): open failed h264_vaapi:/home/hom/Downloads/cin-video.mp4 Render::render_single: Session finished.
The error message "Failed to initialise VAAPI connection" usually means you have not installed "libva-driver-intel" (your specific operating system package name may vary; for example it could be "libva-devel.x86_64"). If you have trouble doing that, please reply with which operating system you are using.
I have tested this AppImage as working on older Intel SkyLake and KabyLake with iGPU, beside newer AlderLake/DG2, all with openSUSE Slowroll (beside the rpm for Leap15). 'inxi -G' on the newest hardware shows: Graphics Device-1: Intel DG2 [Arc A750] driver: i915 v: kernel
Thought I'm not sure what are really required as runtime for vaapi rendering, I have installed packages for intel-vaapi-driver, intel-media-driver (for VAAPI), kernel-firmware-intel, libdrm_intel1,libva-drm2,libva-wayland2, libva2, libvpl2, Mesa-libva
https://github.com/intel/media-driver?tab=readme-ov-file#intelr-media-driver-for-vaapi
The error message "Failed to initialise VAAPI connection" usually means you have not installed "libva-driver-intel" (your specific operating system package name may vary; for example it could be "libva-devel.x86_64"). If you have trouble doing that, please reply with which operating system you are using.
Actually i have installed intel graphics driver:
https://dgpu-docs.intel.com/driver/client/overview.html#installing-client-gpus-on-ubuntu-desktop-24-04-lts
for Ubuntu 24.04, KDE Neon, Wayland.
And i have intel ARC graphics acceleration for games via Wine.
(And i veryfied it like it described here (at the botom): https://chsasank.com/intel-arc-gpu-driver-oneapi-installation.html)
Installed libva:
libva-drm2:amd64
libva-wayland2:amd64
libva-x11-2:amd64
libva2:amd64
$ inxi -G
Graphics: Device-1: Intel Meteor Lake-P [Intel Arc Graphics] driver: i915 v: kernel Device-2: SunplusIT XiaoMi WebCam driver: uvcvideo type: USB Display: wayland server: X.org v: 1.21.1.11 with: Xwayland v: 23.2.6 compositor: kwin_wayland driver: X: loaded: modesetting unloaded: fbdev,vesa dri: iris gpu: i915 resolution: 1536x960 API: EGL v: 1.5 drivers: iris,swrast platforms: gbm,wayland,x11,surfaceless,device API: OpenGL v: 4.6 compat-v: 4.5 vendor: intel v: N/A renderer: Mesa Intel Arc Graphics (MTL) API: Vulkan v: 1.3.280 drivers: N/A surfaces: xcb,xlib,wayland
$ lspci -nn | grep -Ei 'VGA|DISPLAY'
00:02.0 VGA compatible controller [0300]: Intel Corporation Meteor Lake-P [Intel Arc Graphics] [8086:7d55] (rev 08)
I have tested this AppImage as working on older Intel SkyLake and KabyLake with iGPU, beside newer AlderLake/DG2, all with openSUSE Slowroll (beside the rpm for Leap15). 'inxi -G' on the newest hardware shows: Graphics Device-1: Intel DG2 [Arc A750] driver: i915 v: kernel
Thought I'm not sure what are really required as runtime for vaapi rendering, I have installed packages for intel-vaapi-driver, intel-media-driver (for VAAPI), kernel-firmware-intel, libdrm_intel1,libva-drm2,libva-wayland2, libva2, libvpl2, Mesa-libva
https://github.com/intel/media-driver?tab=readme-ov-file#intelr-media-driver-for-vaapi
Looks like it can be installed only via compilation
I can now confirm a similar "Failed to initialise VAAPI connection" with the AppIimage so far on Ubuntu 24.04 LTS. This is on my 2017 KabyLake (Dell XPS-13-9370) with UHD 620 iGPU, where Ubuntu 16 was installed from fabric, and last time distro upgraded to Ubuntu 24.04. Still there might be missing files or drivers. And as mentioned the AppImage works with openSUSE Slowroll in a multiboot setup on the same machine.
I don't know if Einander have a chance to build also a Ubuntu package next with oneVPL(?)
Additional test shows that ffmpeg vaapi encoding works on Ubuntu 24.04
ffmpeg -init_hw_device vaapi -i hdv09_04.m2t -vf "format=nv12,hwupload" -c:v h264_vaapi -y hdv09_04_h264_vaapi_nv12.mp4
ffmpeg version n4.3.1 Copyright (c) 2000-2020 the FFmpeg developers
built with gcc 7 (Ubuntu 7.5.0-3ubuntu1~18.04)
..........snip
frame= 5977 fps=109 q=-0.0 Lsize= 723962kB time=00:03:59.00 bitrate=24814.6kbits/s dup=14 drop=0 speed=4.38x
-----------
ffmpeg version n4.3.1 ...built with gcc 7 (Ubuntu 7.5.0-3ubuntu1~18.04)
seems confusing at least for me on Ubuntu compared with
apt show ffmpeg
Package: ffmpeg
Version: 7:6.1.1-3ubuntu5
In comparison the Slowroll the system ffmpeg-7-7.1, built with gcc 14)
I tested video convert in Kdenlive.
With libx264 and with h264_vaapi render profiles.
h264_vaapi works there.
Both profiles seem to work the same there in terms of rendering speed, but the size of the output mp4 file rendered via h264_vaapi is smaller 208MB against 258MB.
For some reasons, I didn't get ffmpeg QSV hwaccel encoding to work on Ubuntu.
But here is a good overview over the OSV media stack components for different Linux distributions. I would suggest to verify that your installation get/have these - who know if they may help for Cingg too 😉 (?)
But here is a good overview over the OSV media stack components for different Linux distributions. I would suggest to verify that your installation get/have these - who know if they may help for Cingg too 😉 (?)
I checked and found that it is installed:
intel-media-va-driver-non-free libva2 vainfo libigdgmm12 libmfxgen1 libvpl2 libmfx1
intel-media-va-driver-non-free: Installed: 24.3.4-1018~24.04 Candidate: 24.3.4-1018~24.04 Version table: +++ 24.3.4-1018~24.04 500 500 https://repositories.intel.com/gpu/ubuntu noble/client amd64 Packages 100 /var/lib/dpkg/status 24.3.3-996~24.04 500 500 https://repositories.intel.com/gpu/ubuntu noble/client amd64 Packages 24.2.4-914~24.04 500 500 https://repositories.intel.com/gpu/ubuntu noble/client amd64 Packages 24.1.0+ds1-1 500 500 http://archive.ubuntu.com/ubuntu noble/multiverse amd64 Packages libva2: Installed: 2.22.0.2-87~u24.04 Candidate: 2.22.0.2-87~u24.04 Version table: +++ 2.22.0.2-87~u24.04 500 500 https://repositories.intel.com/gpu/ubuntu noble/client amd64 Packages 100 /var/lib/dpkg/status 2.22.0.1.2-84~u24.04 500 500 https://repositories.intel.com/gpu/ubuntu noble/client amd64 Packages 2.20.0-2build1 500 500 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages vainfo: Installed: 2.22.0.2-1~u24.04 Candidate: 2.22.0.2-1~u24.04 Version table: +++ 2.22.0.2-1~u24.04 500 500 https://repositories.intel.com/gpu/ubuntu noble/client amd64 Packages 100 /var/lib/dpkg/status 2.21.0.2-1~u24.04 500 500 https://repositories.intel.com/gpu/ubuntu noble/client amd64 Packages 2.12.0+ds1-1 500 500 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages libigdgmm12: Installed: 22.5.2-1018~24.04 Candidate: 22.5.2-1018~24.04 Version table: +++ 22.5.2-1018~24.04 500 500 https://repositories.intel.com/gpu/ubuntu noble/client amd64 Packages 100 /var/lib/dpkg/status 22.5.1-992~24.04 500 500 https://repositories.intel.com/gpu/ubuntu noble/client amd64 Packages 22.3.19-903~24.04 500 500 https://repositories.intel.com/gpu/ubuntu noble/client amd64 Packages 22.3.17+ds1-1 500 500 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages libmfxgen1: Installed: 24.2.4-914~24.04 Candidate: 24.2.4-914~24.04 Version table: +++ 24.2.4-914~24.04 500 500 https://repositories.intel.com/gpu/ubuntu noble/client amd64 Packages 100 /var/lib/dpkg/status libvpl2: Installed: 1:2.13.0.0-1012~24.04 Candidate: 1:2.13.0.0-1012~24.04 Version table: +++ 1:2.13.0.0-1012~24.04 500 500 https://repositories.intel.com/gpu/ubuntu noble/client amd64 Packages 100 /var/lib/dpkg/status 1:2.13.0.0-996~24.04 500 500 https://repositories.intel.com/gpu/ubuntu noble/client amd64 Packages 1:2.11.0.0-914~24.04 500 500 https://repositories.intel.com/gpu/ubuntu noble/client amd64 Packages 2023.3.0-1build1 500 500 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages libmfx1: Installed: 22.5.4-1 Candidate: 22.5.4-1 Version table: +++ 22.5.4-1 500 500 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages 100 /var/lib/dpkg/status
and not installed was:
libvpl-tools libmfx-tools libigfxcmrt7
libvpl-tools: Installed: 2:1.2.0-1012~24.04 Candidate: 2:1.2.0-1012~24.04 Version table: +++ 2:1.2.0-1012~24.04 500 500 https://repositories.intel.com/gpu/ubuntu noble/client amd64 Packages 100 /var/lib/dpkg/status 2:1.2.0-996~24.04 500 500 https://repositories.intel.com/gpu/ubuntu noble/client amd64 Packages 1:1.0.0-914~24.04 500 500 https://repositories.intel.com/gpu/ubuntu noble/client amd64 Packages libmfx-tools: Installed: 22.5.4-1 Candidate: 22.5.4-1 Version table: +++ 22.5.4-1 500 500 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages 100 /var/lib/dpkg/status libigfxcmrt7: Installed: 24.3.4-1018~24.04 Candidate: 24.3.4-1018~24.04 Version table: +++ 24.3.4-1018~24.04 500 500 https://repositories.intel.com/gpu/ubuntu noble/client amd64 Packages 100 /var/lib/dpkg/status 24.3.3-996~24.04 500 500 https://repositories.intel.com/gpu/ubuntu noble/client amd64 Packages 24.2.4-914~24.04 500 500 https://repositories.intel.com/gpu/ubuntu noble/client amd64 Packages 24.1.0+dfsg1-1 500 500 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages
but installing it didn't fix the issue.