immich icon indicating copy to clipboard operation
immich copied to clipboard

[BUG] Watching DolbyVision video in mobile immich app on iphone 12 pro max

Open x3mal777 opened this issue 2 years ago • 2 comments

The bug

Videos shot on iphone 12 pro max in dolby vision mode do not play correctly in the mobile immich app. All such videos are played with low contrast and color saturation, there is no DV support in the player. Because of this, the entire library of my videos is displayed incorrectly.

The OS that Immich Server is running on

Debian

Version of Immich Server

v1.63.0

Version of Immich Mobile App

v1.62.0

Platform with the issue

  • [ ] Server
  • [ ] Web
  • [X] Mobile

Your docker-compose.yml content

version: "3.8"

services:
��immich-server:
����container_name: immich_server
����image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
����command: ["start-server.sh"]
����volumes:
������- ${UPLOAD_LOCATION}:/usr/src/app/upload
����env_file:
������- .env
����depends_on:
������- redis
������- database
������- typesense
����restart: always

��immich-microservices:
����container_name: immich_microservices
����image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
����command: ["start-microservices.sh"]
����volumes:
������- ${UPLOAD_LOCATION}:/usr/src/app/upload
����env_file:
������- .env
����depends_on:
������- redis
������- database
������- typesense
����restart: always

��immich-machine-learning:
����container_name: immich_machine_learning
����image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}
����volumes:
������- ${UPLOAD_LOCATION}:/usr/src/app/upload
������- model-cache:/cache
����env_file:
������- .env
����restart: always

��immich-web:
����container_name: immich_web
����image: ghcr.io/immich-app/immich-web:${IMMICH_VERSION:-release}
����env_file:
������- .env
����restart: always

��typesense:
����container_name: immich_typesense
����image: typesense/typesense:0.24.0
����environment:
������- TYPESENSE_API_KEY=${TYPESENSE_API_KEY}
������- TYPESENSE_DATA_DIR=/data
����logging:
������driver: none
����volumes:
������- tsdata:/data
����restart: always

��redis:
����container_name: immich_redis
����image: redis:6.2
����restart: always

��database:
����container_name: immich_postgres
����image: postgres:14
����env_file:
������- .env
����environment:
������POSTGRES_PASSWORD: ${DB_PASSWORD}
������POSTGRES_USER: ${DB_USERNAME}
������POSTGRES_DB: ${DB_DATABASE_NAME}
������PG_DATA: /var/lib/postgresql/data
����volumes:
������- pgdata:/var/lib/postgresql/data
����restart: always

��immich-proxy:
����container_name: immich_proxy
����image: ghcr.io/immich-app/immich-proxy:${IMMICH_VERSION:-release}
����environment:
����� # Make sure these values get passed through from the env file
������- IMMICH_SERVER_URL
������- IMMICH_WEB_URL
����ports:
������- 80:8080
����depends_on:
������- immich-server
����restart: always

volumes:
��pgdata:
��model-cache:
��tsdata:

Your .env content

DB_HOSTNAME=immich_postgres
DB_USERNAME=postgres
DB_PASSWORD=mypassword
DB_DATABASE_NAME=immich
REDIS_HOSTNAME=immich_redis
UPLOAD_LOCATION=/opt/immich/idata
TYPESENSE_API_KEY=<myapikey>
DISABLE_REVERSE_GEOCODING=false
REVERSE_GEOCODING_PRECISION=3
IMMICH_WEB_URL=http://immich-web:3000
IMMICH_SERVER_URL=http://immich-server:3001
IMMICH_MACHINE_LEARNING_URL=http://immich-machine-learning:3003

Reproduction steps

1. synchronize DV video
2. play DV video in mobile immich app

Additional information

No response

x3mal777 avatar Jun 24 '23 09:06 x3mal777

This is a limitation of the player rather than an Immich bug and it appears to not have a fix for this until the video player library supports it.

alextran1502 avatar Jun 24 '23 11:06 alextran1502

Assuming the videos are transcoded, it's probably because video transcoding currently doesn't handle HDR and makes everything SDR. It would be good to add tone-mapping to preserve their color reproduction when going from HDR to SDR.

In the meantime, you can try disabling transcoding. I think the existing videos will still use the transcoded version, but new ones will use the original video instead.

mertalev avatar Jun 24 '23 20:06 mertalev

As of the latest release, HDR videos are tone-mapped for compatibility.

mertalev avatar Aug 16 '23 04:08 mertalev