-
-
Notifications
You must be signed in to change notification settings - Fork 4.1k
Description
The bug
Hardware decoding:
Enables end-to-end acceleration instead of only accelerating encoding. May not work on all videos.
When I try to transcode video, immich specifically has problems with HEVC HDR10+ video files taken on S24 Ultra phone when I enable hardware decoding. CPU is i5-13500. No issues with hardware encoding, only hardware decoding causes problems with these files.
The OS that Immich Server is running on
Unraid 7.1.4
Version of Immich Server
v1.137.3
Version of Immich Mobile App
v1.37.2 build.3002
Platform with the issue
- Server
- Web
- Mobile
Your docker-compose.yml content
name: immich
services:
immich-server:
container_name: immich_server
image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
volumes:
- ${UPLOAD_LOCATION}:/usr/src/app/upload
- /etc/localtime:/etc/localtime:ro
env_file:
- .env
ports:
- 2283:2283
depends_on:
- redis
- database
devices: # HW TRANSCODING QUICKSYNC
- /dev/dri:/dev/dri # HW TRANSCODING QUICKSYNC
restart: always
healthcheck:
disable: false
deploy:
resources:
limits:
cpus: "8"
immich-machine-learning:
container_name: immich_machine_learning
# image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}
image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}-openvino # HW ACCELERATION OPEN-VINO
volumes:
- /mnt/nvme4tb/immich/model-cache:/cache
- /dev/bus/usb:/dev/bus/usb # HW ACCELERATION OPEN-VINO
env_file:
- .env
restart: always
healthcheck:
disable: false
device_cgroup_rules: # HW ACCELERATION OPEN-VINO
- 'c 189:* rmw' # HW ACCELERATION OPEN-VINO
devices:
- /dev/dri:/dev/dri # HW ACCELERATION OPEN-VINO
deploy:
resources:
limits:
cpus: "8"
redis:
container_name: immich_redis
# image: registry.hub.docker.com/library/redis:6.2-alpine@sha256:84882e87b54734154586e5f8abd4dce69fe7311315e2fc6d67c29614c8de2672
image: docker.io/valkey/valkey:8-bookworm@sha256:42cba146593a5ea9a622002c1b7cba5da7be248650cbb64ecb9c6c33d29794b1
restart: always
healthcheck:
test: redis-cli ping || exit 1
database:
container_name: immich_postgres
# image: registry.hub.docker.com/tensorchord/pgvecto-rs:pg14-v0.2.0@sha256:90724186f0a3517cf6914295b5ab410db9ce23190a2d9d0b9dd6463e3fa298f0
image: ghcr.io/immich-app/postgres:14-vectorchord0.3.0-pgvectors0.2.0
environment:
POSTGRES_PASSWORD: ${DB_PASSWORD}
POSTGRES_USER: ${DB_USERNAME}
POSTGRES_DB: ${DB_DATABASE_NAME}
POSTGRES_INITDB_ARGS: '--data-checksums'
volumes:
- ${DB_DATA_LOCATION}:/var/lib/postgresql/data
restart: always
immich-selfie-timelapse:
image: arnaudcayrol/immich-selfie-timelapse
container_name: immich-selfie-timelapse
ports:
- "5000:5000"
volumes:
- /mnt/nvme4tb/immich/immich_selfie_timelapse:/app/output
environment:
- IMMICH_API_KEY=xxxxxxxxxxxxxxxxredactedxxxxxxxxxx
- IMMICH_BASE_URL=http://immich_server:2283/api
- LOGLEVEL=DEBUG
- FLASK_ENV=development
restart: always
Your .env content
# You can find documentation for all the supported env variables at https://immich.app/docs/install/environment-variables
# The location where your uploaded files are stored
UPLOAD_LOCATION=/mnt/nvme4tb/immich
# The location where your database files are stored
DB_DATA_LOCATION=/mnt/cache_nvme/appdata/immich/postgres
# The Immich version to use. You can pin this to a specific version like "v1.71.0"
IMMICH_VERSION=release
# The values below this line do not need to be changed
###################################################################################
DB_HOSTNAME=immich_postgres
DB_USERNAME=postgres
DB_PASSWORD=postgres
DB_DATABASE_NAME=immich
REDIS_HOSTNAME=immich_redis
# IMMICH_HOST=192.168.1.173
# IMMICH_PORT=2283
Reproduction steps
I think this is a known issue with hardware decoding, however I describe my issue and my setup and I give a sample video file, so that this may help with development or other users having this issue. When I try to transcode video, immich specifically has problems with HEVC HDR10+ video files taken on S24 Ultra phone when I enable hardware decoding. CPU is i5-13500.
Video transcoding settings as default:
No issues
Video transcoding settings as default + enable hw acceleration [quick sync]:
No issues
Video transcoding settings as deault + enable hw acceleration [quick sync] + enable hardware decoding:
Video has issues, either it hangs or the video is really jittery.
Sample video file:
https://drive.google.com/file/d/104Sk03PJ_vO0NxeK28zrnPAW2AKGYfHR/view?usp=sharing
Thanks
Mike
Metadata
Metadata
Assignees
Labels
Type
Projects
Status