Transcoding on Truenas Scale on a N5095-based NAS

I am trying to get HW transcoding working using Truenas Scale 25.10.6 running on Celeron N5095 NAS (Terramaster F4-423) /w 32GB of RAM... which only has the JasperLake iGPU. Particularly for DV Profile 7 videos I am trying to play via a browser (Mac Safari)... Direct Streaming to supported clients works fine.

I am using the Truenas version community version of the Jellyfin Docker app (Jellyfin ver. 10.11.11 - App Ver. 1.3.12).

I followed the guide here:

https://jellyfin.org/docs/general/instal...d/truenas/

In the App Config under truenas I have passthrough set to enable for non-Nvidia GPUs.

Within Jellyfin I have the following set under Playback->Transcoding:


  Screen Shot 2026-08-17 at 15.29.50 PM [1].png (Size: 214.35 KB / Downloads: 2)
  Screen Shot 2026-08-17 at 15.37.24 PM [1].png (Size: 310.27 KB / Downloads: 2)
  Screen Shot 2026-08-17 at 15.37.51 PM [1].png (Size: 259.6 KB / Downloads: 2)
  Screen Shot 2026-08-17 at 15.38.12 PM [1].png (Size: 269.55 KB / Downloads: 1)
  Screen Shot 2026-08-17 at 15.38.24 PM [1].png (Size: 304.32 KB / Downloads: 2)

Here is the FFMPEG Log:
Code:{"Protocol":0,"Id":"8344e0433d05743c968dbc03511a04ab","Path":"/content/HD/Tests/awaken-girl.4K.HDR.DV.mkv","EncoderPath":null,"EncoderProtocol":null,"Type":0,"Container":"mkv","Size":125335345,"Name":"awaken-girl.4K.HDR.DV","IsRemote":false,"ETag":"9cf119a379c8a4bc8c7bfa21b4f8ffc8","RunTimeTicks":110210000,"ReadAtNativeFramerate":false,"IgnoreDts":false,"IgnoreIndex":false,"GenPtsInput":false,"SupportsTranscoding":true,"SupportsDirectStream":true,"SupportsDirectPlay":true,"IsInfiniteStream":false,"UseMostCompatibleTranscodingProfile":false,"RequiresOpening":false,"OpenToken":null,"RequiresClosing":false,"LiveStreamId":null,"BufferMs":null,"RequiresLooping":false,"SupportsProbing":true,"VideoType":0,"IsoType":null,"Video3DFormat":null,"MediaStreams":[{"Codec":"hevc","CodecTag":null,"Language":"eng","ColorRange":null,"ColorSpace":"bt2020nc","ColorTransfer":"smpte2084","ColorPrimaries":"bt2020","DvVersionMajor":1,"DvVersionMinor":0,"DvProfile":7,"DvLevel":6,"RpuPresentFlag":1,"ElPresentFlag":1,"BlPresentFlag":1,"DvBlSignalCompatibilityId":6,"Rotation":null,"Comment":null,"TimeBase":"1/1000","CodecTimeBase":null,"Title":null,"Hdr10PlusPresentFlag":null,"VideoRange":2,"VideoRangeType":8,"VideoDoViTitle":"Dolby Vision Profile 7.6 (HDR10)","AudioSpatialFormat":0,"LocalizedUndefined":null,"LocalizedDefault":null,"LocalizedForced":null,"LocalizedExternal":null,"LocalizedHearingImpaired":null,"DisplayTitle":"4K HEVC Dolby Vision Profile 7.6 (HDR10)","NalLengthSize":null,"IsInterlaced":false,"IsAVC":false,"ChannelLayout":null,"BitRate":90979290,"BitDepth":10,"RefFrames":1,"PacketLength":null,"Channels":null,"SampleRate":null,"IsDefault":true,"IsForced":false,"IsHearingImpaired":false,"Height":2160,"Width":3840,"AverageFrameRate":23.976025,"RealFrameRate":23.976025,"ReferenceFrameRate":23.976025,"Profile":"Main 10","Type":1,"AspectRatio":"16:9","Index":0,"Score":null,"IsExternal":false,"DeliveryMethod":null,"DeliveryUrl":null,"IsExternalUrl":null,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"Path":null,"PixelFormat":"yuv420p10le","Level":153,"IsAnamorphic":false},{"Codec":"dts","CodecTag":null,"Language":"eng","ColorRange":null,"ColorSpace":null,"ColorTransfer":null,"ColorPrimaries":null,"DvVersionMajor":null,"DvVersionMinor":null,"DvProfile":null,"DvLevel":null,"RpuPresentFlag":null,"ElPresentFlag":null,"BlPresentFlag":null,"DvBlSignalCompatibilityId":null,"Rotation":null,"Comment":null,"TimeBase":"1/1000","CodecTimeBase":null,"Title":"DTS","Hdr10PlusPresentFlag":null,"VideoRange":0,"VideoRangeType":0,"VideoDoViTitle":null,"AudioSpatialFormat":0,"LocalizedUndefined":null,"LocalizedDefault":"Default","LocalizedForced":null,"LocalizedExternal":"External","LocalizedHearingImpaired":null,"DisplayTitle":"DTS - English - 5.1 - Default","NalLengthSize":null,"IsInterlaced":false,"IsAVC":false,"ChannelLayout":"5.1","BitRate":1536000,"BitDepth":null,"RefFrames":null,"PacketLength":null,"Channels":6,"SampleRate":48000,"IsDefault":true,"IsForced":false,"IsHearingImpaired":false,"Height":null,"Width":null,"AverageFrameRate":null,"RealFrameRate":null,"ReferenceFrameRate":null,"Profile":"DTS","Type":0,"AspectRatio":null,"Index":1,"Score":null,"IsExternal":false,"DeliveryMethod":null,"DeliveryUrl":null,"IsExternalUrl":null,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"Path":null,"PixelFormat":null,"Level":0,"IsAnamorphic":null}],"MediaAttachments":[],"Formats":[],"Bitrate":92515290,"FallbackMaxStreamingBitrate":null,"Timestamp":null,"RequiredHttpHeaders":{},"TranscodingUrl":null,"TranscodingSubProtocol":0,"TranscodingContainer":null,"AnalyzeDurationMs":null,"DefaultAudioStreamIndex":null,"DefaultSubtitleStreamIndex":null,"HasSegments":false}

/usr/lib/jellyfin-ffmpeg/ffmpeg -analyzeduration 200M -probesize 1G -f matroska -init_hw_device vaapi=va:/dev/dri/renderD128,driver=iHD -init_hw_device qsv=qs@va -init_hw_device opencl=ocl@va -filter_hw_device qs -hwaccel vaapi -hwaccel_output_format vaapi -noautorotate -i file:"/content/HD/Tests/awaken-girl.4K.HDR.DV.mkv" -noautoscale -map_metadata -1 -map_chapters -1 -threads 0 -map 0:0 -map 0:1 -map -0:s -codec:v:0 h264_qsv -preset veryfast -mbbrc 1 -b:v 90979290 -maxrate 90979291 -rc_init_occupancy 181958580 -bufsize 363917160 -profile:v:0 high -level 51 -g:v:0 72 -keyint_min:v:0 72 -vf "setparams=color_primaries=bt2020:color_trc=smpte2084:colorspace=bt2020nc,hwmap=derive_device=opencl:mode=read,tonemap_opencl=format=nv12:p=bt709:t=bt709:m=bt709:tonemap=bt2390:peak=100:desat=0,hwmap=derive_device=qsv:mode=write:reverse=1:extra_hw_frames=16,format=qsv" -codec:a:0 libfdk_aac -ac 6 -ab 640000 -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 "ded8ec8ef1d824c1f712d791663def30-1.mp4" -start_number 0 -hls_segment_filename "/cache/transcodes/ded8ec8ef1d824c1f712d791663def30%d.mp4" -hls_playlist_type vod -hls_list_size 0 -hls_segment_options movflags=+frag_discont -y "/cache/transcodes/ded8ec8ef1d824c1f712d791663def30.m3u8"


ffmpeg version 7.1.4-Jellyfin Copyright (c) 2000-2026 the FFmpeg developers
built with gcc 14 (Debian 14.2.0-19)
configuration: --prefix=/usr/lib/jellyfin-ffmpeg --target-os=linux --extra-version=Jellyfin --disable-doc --disable-ffplay --disable-static --disable-libxcb --disable-sdl2 --disable-xlib --enable-lto=auto --enable-gpl --enable-version3 --enable-shared --enable-gmp --enable-gnutls --enable-chromaprint --enable-opencl --enable-libdrm --enable-libxml2 --enable-libass --enable-libfreetype --enable-libfribidi --enable-libfontconfig --enable-libharfbuzz --enable-libbluray --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libopenmpt --enable-libdav1d --enable-libsvtav1 --enable-libwebp --enable-libvpx --enable-libx264 --enable-libx265 --enable-libzvbi --enable-libzimg --enable-libfdk-aac --arch=amd64 --enable-libshaderc --enable-libplacebo --enable-vulkan --enable-vaapi --enable-amf --enable-libvpl --enable-ffnvcodec --enable-cuda --enable-cuda-llvm --enable-cuvid --enable-nvdec --enable-nvenc
libavutil 59. 39.100 / 59. 39.100
libavcodec 61. 19.101 / 61. 19.101
libavformat 61. 7.103 / 61. 7.103
libavdevice 61. 3.100 / 61. 3.100
libavfilter 10. 5.100 / 10. 5.100
libswscale 8. 3.100 / 8. 3.100
libswresample 5. 3.100 / 5. 3.100
libpostproc 58. 3.100 / 58. 3.100
libva info: VA-API version 1.23.0
libva info: Trying to open /usr/lib/jellyfin-ffmpeg/lib/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_23
libva info: va_openDriver() returns 0
Input #0, matroska,webm, from 'file:/content/HD/Tests/awaken-girl.4K.HDR.DV.mkv':
Metadata:
title : Awaken (2018) UHD Disc Sample
encoder : libebml v1.4.2 + libmatroska v1.6.4
creation_time : 2022-03-27T14:52:12.000000Z
Duration: 00:00:11.02, start: 0.000000, bitrate: 90979 kb/s
Stream #0:0(eng): Video: hevc (Main 10), yuv420p10le(tv, bt2020nc/bt2020/smpte2084), 3840x2160 [SAR 1:1 DAR 16:9], 23.98 fps, 23.98 tbr, 1k tbn (default)
Metadata:
BPS : 89535914
DURATION : 00:00:11.012000000
NUMBER_OF_FRAMES: 264
NUMBER_OF_BYTES : 123246186
_STATISTICS_WRITING_APP: mkvmerge v66.0.0 ('Josie') 64-bit
_STATISTICS_WRITING_DATE_UTC: 2022-03-27 14:52:12
_STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
Side data:
DOVI configuration record: version: 1.0, profile: 7, level: 6, rpu flag: 1, el flag: 1, bl flag: 1, compatibility id: 6, compression: 0
Stream #0:1(eng): Audio: dts (dca) (DTS), 48000 Hz, 5.1(side), fltp, 1536 kb/s (default) (original)
Metadata:
title : DTS
BPS : 1508954
DURATION : 00:00:11.019000000
NUMBER_OF_FRAMES: 1033
NUMBER_OF_BYTES : 2078396
_STATISTICS_WRITING_APP: mkvmerge v66.0.0 ('Josie') 64-bit
_STATISTICS_WRITING_DATE_UTC: 2022-03-27 14:52:12
_STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
Stream mapping:
Stream #0:0 -> #0:0 (hevc (native) -> h264 (h264_qsv))
Stream #0:1 -> #0:1 (dts (dca) -> aac (libfdk_aac))
Press [q] to stop, [?] for help
[hevc @ 0x7f0bce0fad00] Skipping NAL unit 63
Last message repeated 9 times
[hevc @ 0x7f0bce0fb400] Skipping NAL unit 63
Last message repeated 2 times
[hevc @ 0x7f0bce0fb780] Skipping NAL unit 63
Last message repeated 2 times
[hevc @ 0x7f0bce0fbb00] Skipping NAL unit 63
Last message repeated 2 times
[hevc @ 0x7f0bce0fbe80] Skipping NAL unit 63
Last message repeated 2 times
[hevc @ 0x7f0bce0fad00] Skipping NAL unit 63
libva info: VA-API version 1.23.0
libva info: Trying to open /usr/lib/jellyfin-ffmpeg/lib/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_23
libva info: va_openDriver() returns 0
Last message repeated 2 times
[hevc @ 0x7f0bce0fb400] Skipping NAL unit 63
Last message repeated 2 times
[hevc @ 0x7f0bce0fb780] Skipping NAL unit 63
Last message repeated 2 times
[hevc @ 0x7f0bce0fbb00] Skipping NAL unit 63
Last message repeated 2 times
[h264_qsv @ 0x7f0bce0fa280] Selected ratecontrol mode is unsupported
[h264_qsv @ 0x7f0bce0fa280] some encoding parameters are not supported by the QSV runtime. Please double check the input parameters.
[vost#0:0/h264_qsv @ 0x7f0bce0d6800] Error while opening encoder - maybe incorrect parameters such as bit_rate, rate, width or height.
[vf#0:0 @ 0x7f0bce0ec500] Error sending frames to consumers: Function not implemented
[vf#0:0 @ 0x7f0bce0ec500] Task finished with error code: -38 (Function not implemented)
[vf#0:0 @ 0x7f0bce0ec500] Terminating thread with return code -38 (Function not implemented)
[vost#0:0/h264_qsv @ 0x7f0bce0d6800] Could not open encoder before EOF
[vost#0:0/h264_qsv @ 0x7f0bce0d6800] Task finished with error code: -22 (Invalid argument)
[vost#0:0/h264_qsv @ 0x7f0bce0d6800] Terminating thread with return code -22 (Invalid argument)
[out#0/hls @ 0x7f0bce0ec980] Nothing was written into output file, because at least one of its streams received no packets.
frame= 0 fps=0.0 q=0.0 Lsize= 0KiB time=N/A bitrate=N/A speed=N/A
Conversion failed!

On thing I am unsure of, is how to enable Low-Power mode on the i915... it was mostly in relation to older kernels but Jasper Lake specifically needs some sort of Intel binaries installed, but I am not sure if these exist in Truenas Scale.

I have see some people mention needing specific GuC and HuC firmware, and a kernel parameter (i915.enable_guc=2 for Jasper Lake specifically) but that was on older Truenas Versions... not sure if that is still needed.

添加评论
点赞收藏
点踩分享查看原文
评论
?
参与讨论