non-free firmwares deb http://deb.debian.org/debian bookworm non-free-firmware
non-free drivers and components deb http://deb.debian.org/debian bookworm non-free
Step 2 – Installing the GPU Driver
Install the following apt update && apt install intel-media-va-driver-non-free intel-gpu-tools
Step 3 – Confirm GPU’s major number’s for fb0 and renderD128
Important: Note down your major numbers from your output my example numbers may not be the same as yours and if this are incorrect the gpu will not work.
cd /dev
Use the following command to list all files and folders in the current directory
ls -lah
Make a note of the numbers in bold for fb0 (If it exists)
crw-rw---- 1 root video 29, 0 Aug 30 21:19 fb0
Navigate to the dri folder using the following command
cd /dev/dri
ls -lah
Make a note of the the number in bold for renderD128
crwxrwxrwx 1 root render 226, 128 Aug 30 21:19 renderD128
Step 4 – Amend Proxmox CT/LXC config to allow access to the GPU
Now we will add the numbers that were noted down to our CT config on proxmox for Emby – Important amend the command below with your CT’s ID number shown the proxmox webgui (Example Below) Mine is 3006
Now open your CT’s config files on your Proxmox host.
nano /etc/pve/lxc/3006.conf
Add the following lines to the file and save using CTRL + O and then enter. lxc.cgroup2.devices.allow: c 29:* rwm lxc.cgroup2.devices.allow: c 226:* rwm lxc.mount.entry: /dev/fb0 dev/fb0 none bind,optional,create=file lxc.mount.entry: /dev/dri dev/dri none bind,optional,create=dir lxc.apparmor.profile: unconfined
Step 5 – Adding Persistent GPU Permissions
Important: Giving 777 permissions to your GPU is not considered best practice from a security standpoint. While this approach works, there are more secure methods you can follow. However, I understand the risks and accept them on my system. do this at your own risk…
Adding Persistent GPU Permissions on proxmox host so the GPU is accessible to the CT after reboot.
Run the following command on your proxmox shell (This is basically task manager for your GPU)
intel_gpu_top
Step 6 – LXC/CT GPU Driver installation
Repeat Steps 1 and 2 inside your LXC/CT/Emby Shell
How to Test GPU in Emby?
Login to Emby and navigate on the admin webpage to Server > Transcoding. If you see your GPU and a list of Hardware Decoders its likely working. Test forcing something to Trancode by changing the bitrate and monitor the CPU usage and using intel_gpu_top to see if there is any ffmpeg processes running on the GPU
If your not seeing anything on this page I suggest giving your server a little nap (aka, a reboot) see if that makes the GPU driver jumps into life.
Important: Giving 777 permissions to your GPU is not considered best practice from a security standpoint. While this approach works, there are more secure methods you can follow. However, I understand the risks and accept them on my system. do this at your own risk…
If you are having issues with GPU transcoding in emby and your GPU permission keep changing after reboot use the following commands to fix the permission.
Run the following command inside your proxmox shell.