Having a bit of trouble getting hardware acceleration working on my home server. The cpu of the server is an i7-10700 and has a discrete GPU, RTX 2060. I was hoping to use intel quick sync for the hardware acceleration, but not having much luck.
From the guide on the jellyfin site https://jellyfin.org/docs/general/administration/hardware-acceleration/intel
I have gotten the render group ID using “getent group render | cut -d: -f3” though it mentions on some systems it might not be render, it may be video or input which i tried with those group ID’s as well.
When I run “docker exec -it jellyfin /usr/lib/jellyfin-ffmpeg/vainfo” I get back
libva info: VA-API version 1.22.0
libva info: Trying to open /usr/lib/jellyfin-ffmpeg/lib/dri/nvidia_drv_video.so
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/nvidia_drv_video.so
libva info: Trying to open /usr/lib/dri/nvidia_drv_video.so
libva info: Trying to open /usr/local/lib/dri/nvidia_drv_video.so
libva info: va_openDriver() returns -1
vaInitialize failed with error code -1 (unknown libva error),exit
I feel like I need to do something on the host system since its trying to use the discrete card? But I am unsure.
This is the compose file just in case I am missing something
version: "3.8"
services:
jellyfin:
image: jellyfin/jellyfin
user: 1000:1000
ports:
- 8096:8096
group_add:
- "989" # Change this to match your "render" host group id and remove this comment
- "985"
- "994"
# network_mode: 'host'
volumes:
- /home/hoxbug/Docker/jellyfin/config:/config
- /home/hoxbug/Docker/jellyfin/cache:/cache
- /mnt/External/Movies:/Movies
devices:
- /dev/dri/renderD128:/dev/dri/renderD128
networks:
external:
external: true
Thank you for the help.
This is how mine works, with a Nvidia GPU
services: jellyfin: volumes: - jellyfin_config:/config - jellyfin_cache:/cache - type: tmpfs target: /cache/transcodes tmpfs: size: 8G - media:/media image: jellyfin/jellyfin:latest restart: unless-stopped deploy: resources: reservations: devices: - driver: nvidia device_ids: - "0" capabilities: - gpu
What is the tmpfs for?
Temp files for transcoding. No need to hit the disk.
Is the tmpfs on RAM?
Aye.
It is. It might end up on disk in swap, if you run low on memory (and have some sort of disk-based swap enabled), but usually it is located in RAM.
You can create a tmpfs on other storage devices as well, just curious what their setup looked like
No, tmpfs is always located in virtual memory. Have a look at the kernel documentation for more information about tmpfs.
Hmm. I would think so. But I haven’t actually checked. That was my thought.