mirror of
				https://github.com/immich-app/immich.git
				synced 2025-11-03 11:19:10 -05:00 
			
		
		
		
	* use arrayContaining * libplacebo for nvenc update dockerfile * tweaks * update nvenc options * tweak settings * refactor * toggle for hardware decoding, software / hardware decoding for nvenc and rkmpp * fix software tone-mapping not being applied * separate configs for hw/sw * update api * add hw decode toggle * fix mutating config * remove `version` flag * fix config type * remove submodule * handle temporal AQ * remove duplicate tests * use `tonemap_opencl` * wording * update docs
		
			
				
	
	
		
			56 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			56 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
# Configurations for hardware-accelerated transcoding
 | 
						|
 | 
						|
# If using Unraid or another platform that doesn't allow multiple Compose files,
 | 
						|
# you can inline the config for a backend by copying its contents
 | 
						|
# into the immich-microservices service in the docker-compose.yml file.
 | 
						|
 | 
						|
# See https://immich.app/docs/features/hardware-transcoding for more info on using hardware transcoding.
 | 
						|
 | 
						|
services:
 | 
						|
  cpu: {}
 | 
						|
 | 
						|
  nvenc:
 | 
						|
    deploy:
 | 
						|
      resources:
 | 
						|
        reservations:
 | 
						|
          devices:
 | 
						|
            - driver: nvidia
 | 
						|
              count: 1
 | 
						|
              capabilities:
 | 
						|
                - gpu
 | 
						|
                - compute
 | 
						|
                - video
 | 
						|
 | 
						|
  quicksync:
 | 
						|
    devices:
 | 
						|
      - /dev/dri:/dev/dri
 | 
						|
 | 
						|
  rkmpp:
 | 
						|
    security_opt: # enables full access to /sys and /proc, still far better than privileged: true
 | 
						|
      - systempaths=unconfined
 | 
						|
      - apparmor=unconfined
 | 
						|
    group_add:
 | 
						|
      - video
 | 
						|
    devices:
 | 
						|
      - /dev/rga:/dev/rga
 | 
						|
      - /dev/dri:/dev/dri
 | 
						|
      - /dev/dma_heap:/dev/dma_heap
 | 
						|
      - /dev/mpp_service:/dev/mpp_service
 | 
						|
      #- /dev/mali0:/dev/mali0 # only required to enable OpenCL-accelerated HDR -> SDR tonemapping
 | 
						|
    volumes:
 | 
						|
      #- /etc/OpenCL:/etc/OpenCL:ro # only required to enable OpenCL-accelerated HDR -> SDR tonemapping
 | 
						|
      #- /usr/lib/aarch64-linux-gnu/libmali.so.1:/usr/lib/aarch64-linux-gnu/libmali.so.1:ro # only required to enable OpenCL-accelerated HDR -> SDR tonemapping
 | 
						|
 | 
						|
  vaapi:
 | 
						|
    devices:
 | 
						|
      - /dev/dri:/dev/dri
 | 
						|
 | 
						|
  vaapi-wsl: # use this for VAAPI if you're running Immich in WSL2
 | 
						|
    devices:
 | 
						|
      - /dev/dri:/dev/dri
 | 
						|
    volumes:
 | 
						|
      - /usr/lib/wsl:/usr/lib/wsl
 | 
						|
    environment:
 | 
						|
      - LD_LIBRARY_PATH=/usr/lib/wsl/lib
 | 
						|
      - LIBVA_DRIVER_NAME=d3d12
 |