Render profile for ...
 
Notifications
Clear all

Render profile for Intel ARC gpu

16 Posts
3 Users
0 Likes
311 Views
0
Topic starter

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"?

phylsmith2004 20/01/2025 4:08 pm

@cinuzer 

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.

terje 20/01/2025 10:30 pm

@cinuzer 

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) 

 

 

 

 

 

 

 

 

 

9 Answers
0
Topic starter

Posted by: @phylsmith2004

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.

Posted by: @phylsmith2004

(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

Posted by: @phylsmith2004

(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:

Spoiler
vainfo 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

Posted by: @phylsmith2004

(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).

 

terje 23/01/2025 9:25 pm

@cinuzer 

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.

0

@cinuzer

@terje

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

cinuzer Topic starter 26/01/2025 3:29 am

@phylsmith2004 

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.
Spoiler
srdout
$ /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.

phylsmith2004 26/01/2025 4:46 pm

@cinuzer

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.

0

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

0
Topic starter

Posted by: @phylsmith2004

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

Spoiler

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)
This post was modified 3 weeks ago 2 times by cinuzer
0
Topic starter

Posted by: @terje

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

 

0

@cinuzer

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(?)

terje 29/01/2025 8:41 pm

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)

 

 

cinuzer Topic starter 30/01/2025 6:05 am
This post was modified 3 weeks ago 2 times by cinuzer

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.

 
0
Topic starter

Posted by: @terje

ffmpeg -init_hw_device vaapi -i hdv09_04.m2t -vf "format=nv12,hwupload" -c:v h264_vaapi -y hdv09_04_h264_vaapi_nv12.mp4

Also tested this, works for me as well

This post was modified 3 weeks ago by cinuzer
0

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 😉  (?)

https://github.com/intel/media-driver/wiki

0
Topic starter

Posted by: @terje

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

Spoiler

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

Spoiler

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.

This post was modified 3 weeks ago 3 times by cinuzer
Share: