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:
This is the ls output:
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