immich-app / immich

High performance self-hosted photo and video management solution.
https://immich.app
GNU Affero General Public License v3.0
45.03k stars 2.18k forks source link

Modifications to a live photo are lost upon backup #8885

Open aaszym opened 5 months ago

aaszym commented 5 months ago

The bug

When backing up to the immich server from the immich iOS app, modifications, such as rotations and crops that have been applied to a live photo will be preserved in immich for only the still portion of the live photo, the edits will be reverted back to the original photo for the motion portion of the live photo.

The OS that Immich Server is running on

Windows 11 WSL 2 Docker 4.29.0

Version of Immich Server

v1.101.0

Version of Immich Mobile App

v1.101.0 build.147

Platform with the issue

Your docker-compose.yml content

version: "3.8"
#
# WARNING: Make sure to use the docker-compose.yml of the current release:
#
# https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml
#
# The compose file on main may not be compatible with the latest release.
#

name: immich
services:
  immich-server:
    container_name: immich_server
    image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
    command:
      - start.sh
      - immich
    volumes:
      - ${UPLOAD_LOCATION}:/usr/src/app/upload
      - E:/Pictures/PhotoLibrary:/mnt/media/AaronPhotoLibrary:ro
      - /etc/localtime:/etc/localtime:ro
    env_file:
      - .env
    ports:
      - 2283:3001
    depends_on:
      - redis
      - database
    restart: always
  immich-microservices:
    container_name: immich_microservices
    image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
    #  extends:
    #    file: hwaccel.yml
    #    service: hwaccel
    command:
      - start.sh
      - microservices
    volumes:
      - ${UPLOAD_LOCATION}:/usr/src/app/upload
      - E:/Pictures/PhotoLibrary:/mnt/media/AaronPhotoLibrary:ro
      - /etc/localtime:/etc/localtime:ro
    env_file:
      - .env
    depends_on:
      - redis
      - database
    restart: always
  immich-machine-learning:
    container_name: immich_machine_learning
    image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}
    volumes:
      - model-cache:/cache
    env_file:
      - .env
    restart: always
  redis:
    container_name: immich_redis
    image: redis:6.2-alpine@sha256:c5a607fb6e1bb15d32bbcf14db22787d19e428d59e31a5da67511b49bb0f1ccc
    restart: always
  database:
    container_name: immich_postgres
    image: tensorchord/pgvecto-rs:pg14-v0.2.0@sha256:90724186f0a3517cf6914295b5ab410db9ce23190a2d9d0b9dd6463e3fa298f0
    env_file:
      - .env
    environment:
      POSTGRES_PASSWORD: ${DB_PASSWORD}
      POSTGRES_USER: ${DB_USERNAME}
      POSTGRES_DB: ${DB_DATABASE_NAME}
    volumes:
      - pgdata:/var/lib/postgresql/data
    restart: always
volumes:
  pgdata: null
  model-cache: null
networks: {}
x-dockge:
  urls:
    - http://10.0.0.93:2283/

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=E:/Pictures/Immich

# The Immich version to use. You can pin this to a specific version like "v1.71.0"
IMMICH_VERSION=release

# Connection secret for postgres. You should change it to a random password
DB_PASSWORD=<redacted>

# The values below this line do not need to be changed
###################################################################################
DB_HOSTNAME=immich_postgres
DB_USERNAME=postgres
DB_DATABASE_NAME=immich

REDIS_HOSTNAME=immich_redis

Reproduction steps

1. Take a live photo on an iPhone
2. Make an edit to the live photo, such as a 180 degree rotation
3. Backup the edited live photo to immich via the immich iOS app
4. See that the exported photo on immich will have the 180 degree rotation applied in the still portion, however the motion portion will have the original rotation.

Relevant log output

No response

Additional information

No response

jrasm91 commented 1 week ago

This is a really interesting issue. Can you confirm that it is still happening? If so, can you send me a sample still/motion pair that is rotated (as a zip file) that I can test with?

aaszym commented 6 days ago

Just tested on server and iOS mobile 1.114.0 and yes it is indeed still occurring sadly