2025-08-17, 03:29 PM
Hi!
I'm running Jellyfin 10.10.7 in a Debian 14 (forky/testing) LXC Container on Proxmox 9, with an Intel ARC A380 passed through for hardware transcoding.
I installed Jellyfin directly via apt.
I am trying to watch a 4k HDR video, and for some reason the aspect ratio of the transcoded video (any bitrate/resolution) is being forced from 16:9 down to 4:3.
I tried, with the same result:
* Firefox 141.0.3 (64-bit) also on Debian,
* Chrome 139.0.7258.127 (Official Build) (64-bit) (Debian)
* Jellyfin 2.6.3 on Android 16
ffprobe on the original video says
From the transcoding log, it seems that the transcode is using Intel QSV (expected) to convert to AV1, packing it in an hls container.
Notably, this output says that it's maintaining the aspect ratio.
But "Playback Info" in the browser tells me that the "Video resolution" is "3840x2901" (a.k.a. 4:3), which is not the expected 3840x2160 from the ffmpeg "output" section.
The Android transcode is to H.264 and lower resolution, but the aspect ratio is correct
I found a reddit thread in which someone is having what appears to be the same issue (https://www.reddit.com/r/selfhosted/comm..._43_ratio/), but they didn't give many details.
Does anyone have any idea what this could be caused by?
Thanks!
I'm running Jellyfin 10.10.7 in a Debian 14 (forky/testing) LXC Container on Proxmox 9, with an Intel ARC A380 passed through for hardware transcoding.
I installed Jellyfin directly via apt.
I am trying to watch a 4k HDR video, and for some reason the aspect ratio of the transcoded video (any bitrate/resolution) is being forced from 16:9 down to 4:3.
I tried, with the same result:
* Firefox 141.0.3 (64-bit) also on Debian,
* Chrome 139.0.7258.127 (Official Build) (64-bit) (Debian)
* Jellyfin 2.6.3 on Android 16
ffprobe on the original video says
Stream #0:0(eng): Video: hevc (Main 10), yuv420p10le(tv, bt2020nc/bt2020/smpte2084), 3840x2160 [SAR 1:1 DAR 16:9], SAR 67:90 DAR 536:405, 23.98 fps, 23.98 tbr, 1k tbn (default)
Side data:
Frame cropping: 0/0/276/276
From the transcoding log, it seems that the transcode is using Intel QSV (expected) to convert to AV1, packing it in an hls container.
Notably, this output says that it's maintaining the aspect ratio.
Stream mapping:
Stream #0:0 -> #0:0 (hevc (native) -> av1 (av1_qsv))
Stream #0:1 -> #0:1 (eac3 (native) -> aac (libfdk_aac))
Press [q] to stop, [?] for help
[hls @ 0x5a966ea3d040] Opening '/var/cache/jellyfin/transcodes/0e3beb20cc86c162c3df800eb6181c7a-1.mp4' for writing
Output #0, hls, to '/var/cache/jellyfin/transcodes/0e3beb20cc86c162c3df800eb6181c7a.m3u8':
Metadata:
encoder : Lavf61.7.100
Stream #0:0: Video: av1, qsv(tv, bt709, progressive), 3840x2160 [SAR 67:90 DAR 536:405], q=2-31, 25053 kb/s, 23.98 fps, 24k tbn (default)
Metadata:
encoder : Lavc61.19.101 av1_qsv
But "Playback Info" in the browser tells me that the "Video resolution" is "3840x2901" (a.k.a. 4:3), which is not the expected 3840x2160 from the ffmpeg "output" section.
The Android transcode is to H.264 and lower resolution, but the aspect ratio is correct
Stream mapping:
Stream #0:0 -> #0:0 (hevc (native) -> h264 (h264_qsv))
Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
Output #0, hls, to '/var/cache/jellyfin/transcodes/10a1b354f4e31500281f919ab266be1d.m3u8':
Metadata:
encoder : Lavf61.7.100
Stream #0:0: Video: h264, qsv(tv, bt709, progressive), 2560x1440 [SAR 67:90 DAR 536:405], q=2-31, 19424 kb/s, 23.98 fps, 90k tbn (default)
Metadata:
encoder : Lavc61.19.101 h264_qsv
Side data:
cpb: bitrate max/min/avg: 19424000/0/19424000 buffer size: 38848000 vbv_delay: N/A
I found a reddit thread in which someone is having what appears to be the same issue (https://www.reddit.com/r/selfhosted/comm..._43_ratio/), but they didn't give many details.
Does anyone have any idea what this could be caused by?
Thanks!