jellyfin/docker_files/intel-igpu.transcoding.yml
2025-06-05 16:12:21 +00:00

34 lines
No EOL
1.7 KiB
YAML

# Intel iGPU Transcoding
services:
jellyfin:
environment:
# Basic Hardware Acceleration
- JELLYFIN_FFmpeg__EnableHardwareEncoding=true
- JELLYFIN_FFmpeg__EnableIntelLowPowerEncoding=true
- JELLYFIN_FFmpeg__EnableVppTonemapping=true
- JELLYFIN_FFmpeg__EncoderPreset=Auto
# iGPU Specific
- JELLYFIN_FFmpeg__HardwareDecodingCodecs=["h264_qsv","hevc_qsv","mpeg2_qsv"]
- JELLYFIN_FFmpeg__EnableHWDecodingForCodecs=["h264","hevc","mpeg2video"]
- JELLYFIN_FFmpeg__EnableTonemapping=true
- JELLYFIN_FFmpeg__TonemappingAlgorithm=bt2390 # Tonemapping explained: https://photography.tutsplus.com/what-is-tone-mapping-definition-and-examples--cms-91740
# bt2390: TV industry standard, like how professional studios convert HDR movies for regular TVs
- JELLYFIN_FFmpeg__VaapiDevice=/dev/dri/renderD128
# Driver Configuration
# Check which driver to use with: ls /usr/lib/x86_64-linux-gnu/dri/*_drv_video.so
# And/or use vainfo to see which driver is working
# iHD: Intel 6th gen or newer
# i965: Intel 5th gen or older
- LIBVA_DRIVER_NAME=iHD # Use i965 for older iGPUs, iHD for newer ones
- LIBVA_DRIVERS_PATH=/usr/lib/x86_64-linux-gnu/dri
devices:
- /dev/dri/renderD128:/dev/dri/renderD128
- /dev/dri/card0:/dev/dri/card0
group_add:
- "998" # render group (verify this ID on your system)
volumes:
- /usr/lib/x86_64-linux-gnu/intel-opencl:/usr/lib/x86_64-linux-gnu/intel-opencl:ro
- /usr/lib/x86_64-linux-gnu/libdrm.so.2:/usr/lib/x86_64-linux-gnu/libdrm.so.2:ro
- /usr/lib/x86_64-linux-gnu/libdrm_intel.so.1:/usr/lib/x86_64-linux-gnu/libdrm_intel.so.1:ro