Jump to content

QuickSync linux on a tigerlake


Ratatouille

Recommended Posts

Ratatouille

I need help to set up the drivers for QuickSync on a 11 th gen although I got NVIDIA working but being curious I want to see the difference between both but so far I am unable to get quick sync running any help would be welcome Before on a Coffee Lake vaapi was very easy to implement but not on tiger lake.?

Link to comment
Share on other sites

Q-Droid

That kernel version has support for Tiger Lake and as far as I can tell they also still use the i915 kernel driver which should load on boot. If it doesn't you may have to tweak kernel boot parameters to get the module to load. If you can't find graphics devices under /dev/dri then chances are the kernel driver hasn't loaded.

After that Emby should take over as it includes the drivers for Intel QSV. But if you also want to run other OS and command line tools related to Intel graphics they you would have to find and load those packages.

 

Link to comment
Share on other sites

Ratatouille

Ok I am using debian Debian GNU/Linux, with Linux 5.10.0-0.bpo.9-amd64 I have no idea how to install the driver since dev/dri does not activate transcoding like it use to plus vainfo give me error

rootI:~# vainfo
error: can't connect to X server!
libva info: VA-API version 1.4.0
libva info: va_getDriverName() returns -1
libva error: va_getDriverName() failed with unknown libva error,driver_name=(null)
vaInitialize failed with error code -1 (unknown libva error),exit
rootI:~# ls -l /dev/dri/card0
crw-rw---- 1 root video 226, 0 Oct 31 15:57 /dev/dri/card0
root:~# ls /dev/dri/card0
/dev/dri/card0

 

 

 

Link to comment
Share on other sites

Q-Droid

Is hw transcoding not working in Emby? Like I said before and unless something has changed Emby includes the drivers (libraries) for Intel hw. So as long as the kernel module for DRM loads it should be fine. The command line libva utilities don't work for me either (Coffee Lake) because my OS is older and I would have to build them. But as long as Emby works I don't really care.

Run lsmod | grep i915

Since your CPU is very new you might need a specific version of Emby for support (beta?). Can you attach the hardware detection log?

 

Link to comment
Share on other sites

Ratatouille

 

I think the drivers are not loaded and I don't know how to install them .

I am unable to upload at this moment the hardware detection log error code 200 from the site


root@I:~# Run lsmod | grep i915
-bash: Run: command not found

although I am getting

~# modinfo i915 | grep filename
filename:       /lib/modules/5.10.0-0.bpo.9-amd64/kernel/drivers/gpu/drm/i915/i915.ko

host /dev/dri/renderD128 container /dev/dri/renderD128

host /dev/dri/card0 container /dev/dri/card0 give nothing for transcoding

 

Link to comment
Share on other sites

Q-Droid

Omit "Run", the command is lsmod. 

Emby on docker? Then post compose or run options and attach hardware detection log. 

 

 

Link to comment
Share on other sites

Ratatouille

MSI:~#  lsmod | grep i915
i915                 2695168  0
drm_kms_helper        270336  2 nvidia_drm,i915
cec                    57344  2 drm_kms_helper,i915
drm                   614400  5 drm_kms_helper,nvidia,nvidia_drm,i915
i2c_algo_bit           16384  1 i915
video                  53248  1 i915

but so far you can see Nvidia like I mentioned in first post but of course I want to try QuickSync

version: "2.3"
services:
  emby:
    image: linuxserver/emby:beta
    container_name: embyserver
    runtime: nvidia # Expose NVIDIA GPUs
    network_mode: host # Enable DLNA and Wake-on-Lan
    environment:
      - PUID=1000
      - PGID=100
      - TZ=Europe/London
      - NVIDIA_VISIBLE_DEVICES=all
      - NVIDIA_DRIVER_CAPABILITIES=compute,video,utility
    volumes:
      - /srv/dev-disk-by-uuid-2e5438fd-633f-4658-82b0-dce4dccd3b97/AppData/Config/Emby:/config
      - /srv/dev-disk-by-uuid-9cd27ed0-ef9a-4346-ae1e-5e835ba05832/Media2:/data/movies
      - /srv/dev-disk-by-uuid-eaff6590-9d2f-4e14-aa25-bd1ee663c7b6/Media3/Movies_French:/data/French
      - /srv/dev-disk-by-uuid-2e5438fd-633f-4658-82b0-dce4dccd3b97/AppData/Config/swag:/data/secure
    ports:
      - 8096:8096 # HTTP port
      - 8920:8920 # HTTPS port
    devices:
      - /dev/dri:/dev/dri # VAAPI/NVDEC/NVENC render nodes
     
    restart: unless-stopped

hardware_detection-63771292665.txt

Edited by Ratatouille
Link to comment
Share on other sites

Q-Droid

Okay, the DRM/i915 kernel module is loaded.

1. Are you running Emby in docker?
2. Since you have multiple GPUs have you made sure the iGPU remains active/enabled in BIOS? I think the option is called "iGPU Multi-Monitor" or something along those lines. Otherwise the discrete GPU is the only one enabled by default.

You mentioned host/container in a previous post. If running in docker you need to make sure the container runtime process has access to the DRI devices. The GIDLIST env in compose/run is used to pass the GIDs with access to the /dev/dri devices.

 

 

Link to comment
Share on other sites

Ratatouille

thank you for helping me 

but my BIOS is in multimonitor I am familiar with the runtime process on my previous cpu I did not have NVDIA I just hve to enanble the regular runc process and devices 

/dev/dri:/dev/dri
or /dev/dri/renderD128:/dev/dri/renderD128

AND /dev/dri/card0:/dev/dri/card0

this2021-11-01_191644.thumb.png.9df70900de5e433d5265a45d98b00efa.png is not working this why I think perhaps the driver are not enabled?

 

Link to comment
Share on other sites

Q-Droid

Yes, /dev/dri:/dev/dri is the mapping you want to use.

Have you tried using the official Emby docker image?

It has the option to include additional GIDs.
      - GIDLIST=100 # A comma-separated list of additional GIDs to run emby as (default: 2)

 

Link to comment
Share on other sites

Ratatouille

ok I just  tried

root@:~/mesa# getent group video | cut -d: -f3
44
root@:~/mesa# getent group render | cut -d: -f3
107
 

UID=1000 # The UID to run emby as (default: 2)
      - GID=100 # The GID to run emby as (default 2)
      - GIDLIST=44

 

44 or 107 or 107,44 no joy!

Edited by Ratatouille
Link to comment
Share on other sites

Q-Droid

At this point I would install Emby on the host OS to get around docker and make sure that it can detect and use the iGPU. It's pretty much what the devs will ask you to do if they get involved.

There's also this thread and you can check dmesg to see if you have a similar error message. Might need to force probe for your device as well.

 

 

Link to comment
Share on other sites

Ratatouille

Finally ye!😀

The link above was exactly what I need now I can have VAAPI or quicksync just by changing runc or NVIDIA the issue was on Intel Rocket Lake 11th gen we need to force "i915.force_probe=4c8a" in the kernel @mister steve mentioned it is all over internet https://www.google.com/search?client=firefox-b-d&q=i915.force_probe%3D4c8a
I used this link
https://libredd.it/r/linuxhardware/comments/ms28mk/getting_any_linux_distro_to_work_using_latest/

2021-11-02_234708.png

2021-11-02_235036.png

2021-11-02_235018.png

Link to comment
Share on other sites

Ratatouille

Actually, Now If I used NVIDIA instead of runc I got both and I can check both drivers together but not sure yet if both can works together for transcoding @softworkz ?

2021-11-03_002907.png

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...