• Login
  • Register
  • Login Register
    Login
    Username/Email:
    Password:
    Or login with a social network below
  • Forum
  • Website
  • GitHub
  • Status
  • Translation
  • Features
  • Team
  • Rules
  • Help
  • Feeds
User Links
  • Login
  • Register
  • Login Register
    Login
    Username/Email:
    Password:
    Or login with a social network below

    Useful Links Forum Website GitHub Status Translation Features Team Rules Help Feeds
    Jellyfin Forum Support Troubleshooting Issues with FFMPEG Decoding using Intel iGPU/LXC

     
    • 0 Vote(s) - 0 Average

    Issues with FFMPEG Decoding using Intel iGPU/LXC

    Delzye
    Offline

    Junior Member

    Posts: 3
    Threads: 1
    Joined: 2025 Mar
    Reputation: 0
    Country:Germany
    #1
    2025-03-16, 12:03 PM
    Hi, i tried to setup a jellyfin LXC container in my Proxmox VE, playback using software decoding works, hardware decoding does not.
    For setup, i mostly followed this Guide . I'll attach an error log to the post.
    Curiously, when I run the command from the log inside the shell of the LXC, it seems to work fine (as in, it produces files in the transcodes directory, which does not happen when I try to play a file via the web UI).
    At first, I suspected a permissions error, since the shell runs as root and Jellyfin has it's own user. But "/var/chache/jellyfin" and the transcodes directory both belong to the user Jellyfin (I assume the directory is created by jellyfin, I did not change any of the permissions).

    Any help would be appreciated.

    This is the command:

    Code:
    /usr/lib/jellyfin-ffmpeg/ffmpeg -analyzeduration 200M -probesize 1G -f matroska  -i file:"/movies/6 Underground (2019) 4K.mkv" -map_metadata -1 -map_chapters -1 -threads 0 -map 0:0 -map 0:1 -map -0:s -codec:v:0 h264_vaapi -rc_mode VBR -b:v 10721158 -maxrate 10721158 -bufsize 21442316 -profile:v:0 high -sei -a53_cc -force_key_frames:0 "expr:gte(t,n_forced*3)" -vf "setparams=color_primaries=bt709:color_trc=bt709:colorspace=bt709,scale=trunc(min(max(iw\,ih*a)\,min(3840\,1600*a))/2)*2:trunc(min(max(iw/a\,ih)\,min(3840/a\,1600))/2)*2,format=nv12,hwupload_vaapi" -codec:a:0 libfdk_aac -ac 2 -ab 256000 -af "volume=2" -copyts -avoid_negative_ts disabled -max_muxing_queue_size 2048 -f hls -max_delay 5000000 -hls_time 3 -hls_segment_type fmp4 -hls_fmp4_init_filename "1ccb7b62b9e345ab69d94c88be2d8004-1.mp4" -start_number 0 -hls_segment_filename "/var/cache/jellyfin/transcodes/1ccb7b62b9e345ab69d94c88be2d8004%d.mp4" -hls_playlist_type vod -hls_list_size 0 -y "/var/cache/jellyfin/transcodes/1ccb7b62b9e345ab69d94c88be2d8004.m3u8"

    This is the ls output:

    Code:
    root@Jellyfin:~# ls -lah /var/cache/jellyfin/           
    total 44K
    drwxr-x--- 7 jellyfin adm      4.0K Mar 16 11:05 .
    drwxr-xr-x 9 root    root    4.0K Mar  9 19:31 ..
    drwxr-xr-x 3 jellyfin jellyfin 4.0K Mar 16 11:05 attachments
    drwxr-xr-x 3 jellyfin jellyfin 4.0K Mar 16 10:54 images
    drwxr-xr-x 2 jellyfin jellyfin 4.0K Mar 16 10:53 imagesbyname
    drwxr-xr-x 2 jellyfin jellyfin  12K Mar 16 11:15 omdb
    drwxr-xr-x 2 jellyfin jellyfin  12K Mar 16 11:49 transcodes


    Attached Files
    .txt   jellyfin_output.txt (Size: 58.64 KB / Downloads: 39)
    TheDreadPirate
    Offline

    Community Moderator

    Posts: 15,374
    Threads: 10
    Joined: 2023 Jun
    Reputation: 460
    Country:United States
    #2
    2025-03-16, 04:13 PM
    In the LXC, do you see anything in /dev/dri?

    And what Intel CPU do you have?
    Jellyfin 10.10.7 (Docker)
    Ubuntu 24.04.2 LTS w/HWE
    Intel i3 12100
    Intel Arc A380
    OS drive - SK Hynix P41 1TB
    Storage
        4x WD Red Pro 6TB CMR in RAIDZ1
    [Image: GitHub%20Sponsors-grey?logo=github]
    Delzye
    Offline

    Junior Member

    Posts: 3
    Threads: 1
    Joined: 2025 Mar
    Reputation: 0
    Country:Germany
    #3
    2025-03-16, 05:17 PM
    (2025-03-16, 04:13 PM)TheDreadPirate Wrote: In the LXC, do you see anything in /dev/dri?

    And what Intel CPU do you have?

    I have an i7-8700.

    I have passed the render device to the lxc, so I have renderD128 under /dev/dri. I also changed the owning group to 100104, where 104 is the ID of the render group and added the jellyfin user to the render group.
    Honestly, I an not 100% sure why I need to add 100000 to the GID of render, I did it since the guide said so and a quick google did not get me an answer as to what that does, so I assumed it was required.

    Here is the output of some commands, in case that helps:
    Code:
    root@Jellyfin:~# ls -lah /dev/dri
    total 0
    drwxr-xr-x 2 root  root        60 Mar 16 11:15 .
    drwxr-xr-x 7 root  root        500 Mar 16 11:15 ..
    crw-rw---- 1 100000 100104 226, 128 Mar 16 10:43 renderD128
    root@Jellyfin:~# groups jellyfin
    jellyfin : jellyfin video render
    root@Jellyfin:~# cat /etc/group | grep render
    render:x:104:jellyfin
    Delzye
    Offline

    Junior Member

    Posts: 3
    Threads: 1
    Joined: 2025 Mar
    Reputation: 0
    Country:Germany
    #4
    2025-03-16, 05:35 PM
    Ok, I got it to work by switching from an unprivileged container to a privileged one and changing some of my IOMMU settings, did this last 8 years ago and it seems I messed something up in the config of the kernel modules.
    jenkles316
    Offline

    Junior Member

    Posts: 2
    Threads: 0
    Joined: 2025 May
    Reputation: 0
    #5
    2025-05-14, 08:57 PM
    If you still want to run in an unprivileged container, I was able to get it working w/ my A310.

    I upgraded Proxmox to pve 6.11.11

    After that I was able to add the card and it worked without issues.

    https://privatebin.net/?95da4c20dc1a4224...uTW2K5kKZZ

    If you have multiple GPU's make sure that Card0 and renderD128 are pointing to the correct device.
    « Next Oldest | Next Newest »

    Users browsing this thread: 1 Guest(s)


    • View a Printable Version
    • Subscribe to this thread
    Forum Jump:

    Home · Team · Help · Contact
    © Designed by D&D - Powered by MyBB
    L


    Jellyfin

    The Free Software Media System

    Linear Mode
    Threaded Mode