# 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