mirror of
https://github.com/immich-app/immich.git
synced 2026-02-05 08:41:28 +03:00
[BUG] Asset dates incorrect #1459
Closed
opened 2026-02-05 01:55:04 +03:00 by OVERLORD
·
9 comments
No Branch/Tag Specified
main
fix/web-people-hidden-state
fix-filename-search-label
chore/yank-cloud-id
chore/oauth-labels
renovate/machine-learning
uhthomas/mobile-fix-app-bar-fade
feat/debug-schema
renovate/typescript-projects
fix/25803
feat/asset-file-apis
chore/translations
fix/web-switch-label-clickable
release/next
fix/timezones
fix/time-zone-upserts
midzelis/wip
push-zpwsovysllvn
push-nwxlpmyzkyrl
push-nvnkszuqwppm
renovate/github-actions
push-smstsuupsowp
refactor/adaptive_image
push-olwpzvrxnomt
push-lmxsupnmxspl
feat/web-chromecast-video-looping
feat/use-native-clients
renovate/flutter
fix/create-face-edited
fix/mobile-ios-mtls
docs/contributing
docs/mise-mobile
renovate/grafana-monorepo
feature/bottom-buttons-order
feat/immich-mobile-ui-showcase
refactor/consolidate-image-requests
renovate/connectivity_plus-7.x
renovate/major-vitest-monorepo
renovate/pypi-python-multipart-vulnerability
fix/mobile-people-query
sqlite_thumbs
feat/html-text
chore/no-macro-validation
refactor/purchase-store
uhthomas/mobile-fix-asset-jump
feat/pano-ocr
feat/shared-link-login
fix/database-backup-db-names
fix-keep-correct-ios-shared-album-asset
fix-memory-generation-and-display
feat/verify-permissions
refactor/album-service-small-tests
fix/ml-rocm-build
fix/flipped-dimensions-mobile
push-vpxwmwwxwnvw
fix-migration-width-height
refactor/more-queries
revert/prettier-translations
refactor/asset-service-queries
fix/locale-settings-desc
chore/add-debug-log
feat/edit-filters
shared-deep-link-handler
feat/mobile-editing
feat/thumbnail-native-clients
feat/platform-clients
feat/integrity-checks-izzy
fix/foreground-cloud-sync
feat/dynamic-layout
filter-by-person
feat/csp
refactor/sidebar
fix/disable-editing
fix/view-timeline-deeplink
image-zoom-on-slow-connection
fix-consider-dar-for-video-dimension
fix/merged-edited-assets
perf/optimize-album-sort
open-api-fix
feat/create-job-with-dto
use-toast-primary
feat/vitest-4
feat/ios-fastlane-match
match-signing
fix-update-time-update-timeline
chore/translation-keys
feat/modal-routes
feat/panorama-tiles
feature/mobile-view-asset-owner
feat/system-settings
feature/show-activity-count
better-info-in-asset-viewer
fix/all-people-count
feat/location-favorites
feature/rearrange-buttons-2
fix/download-storage-template
feat/kb-shortcuts-mobile
fix/people-count
push-qolzzzzxrvvn
chore/originals-in-asset-files
feat/asset-size-columns
ben/tree-a11y
new-search-filter-ui
refactor/expectSelectedReadonly
refactor/mobile-grdb
push-qvuktpxmkknu
feat/mobile-native-local-sync
refactor/timeline_ops
fix/scrubber_end
feat/version.txt
feat/context-menus
feat/server-chunked-uploads
refactor/virtualsegment
refactor/rename_daymonth_groups
fix/restrict-android-bg-worker
feat/android-periodic-worker
fix-remote-sync-clean-up
refactor/timeline_move_ops
renovate/mapbox-mapbox-gl-rtl-text-0.x
fix/timeline_split_selectable
feat/keyboard_actions_help_modal
feat/static_frontend
feat/notification-warnign-android
feat/plugins2
feat/plugins
test/create-workflow-token-action
fix/docs-force
debug/search-result-similarity
debug/cf-chunked-uploads
feat/eslint_rule
feat/search-filter-album/web
refactor/timeline_photostream
refactor/timelineasset_asset
feat/session-permissions
feat/timeline_photostream_assetnav
feat/timeline_minor_optimize
feat/timeline_perf_nocomp
feat/timeline_search_results_actions
feat/timeline_search_results_page
fix/timeline_padding
fix/timeline_search_reactivity_warnings
feat/timeline_scrollbar
feat/timeline_stream_withviewer
fix/timeline_back_forth_nav
refactor/timeline_photostream_component
fix/generated-files-checks
fix/locate-button-local
chore/base-image-mimalloc
refactor/timeline_assetlayout
refactor/timeline_selectable
refactor/timeline_aware_actions
refactor/timeline_monthsegment
feat/remove-old-pages
chore/deps-gradle
tmp_photostream
tmp/lcms
feat/mobile-dynamic-thumbnails
fix/mobile-finer-thumbnail-concurrency
refactor/timeline1
refactor/extract_photostream
refactor/rename_load_api
refactor/timeline2
refactor/timeline3
feat/multi-select-asset-viewer
feat-no-thumbhash-cache
refactor/asset_grid
feat/faster-access-checks
fix/18991
fix/19543
chore/temp-remove
fix/21419
feat/mobile-hdr-images
chore/update-mise-lockfile
feat/mise-server-checks
feat/mise-ci
feat/windows-2025
feat/dev_cli
refactor/mobile-migrate-clients
fix/map-theme
fix/require-checkbox
chore/use_swc
feat/efficient-thumbnail-decoding
refactor/mobile-thumbhash
refactor/mobile-thumbhash-new
fix/mobile-uncached-zoom
feat/beta-background-upload
fix/beta-timeline-memories-setting
fix/failed-uploads-not-removed
feat/mobile-shared-album
feat/groups
drift-map-page
drift-auth-user-sync
fix/disable-memory
feat/add-to-album-action
edit-date-time-action
drift-people-page
sqlite-remove-isIn
feat/inline-storage-columns
chore/required-reviewers
refact/asset-manager
fix/folder-sort
pnpm
feat/widget-multiple-server-urls
chore/medium-tests-dbname
fix/web-no-iterator-find
fix/map-pan-interruption
track-livephotos
timeline_events
chore/oxlint-migration
feat/maintenance-worker
feat/dav
chore/demo-snapshot
refactor/server-side-dedupe
feat/integrity-checks
dev/recognition-eval
lighter_buckets_test
perf/postgres-queue
postgres-queue
focus_rings
refactor/web-stores-1
refactor/add-to-taken
feat/sort-places
feat/sidecar-asset-file
vet
tmp/demo-snapshot-preview
fix/server-migration-file-extension
refactor/mobile-v2
fix/asset-update-race-condition
rknn-toolkit-lite2
refactor/mobile-split-up-search-page
feature/Add-rocm-support-for-machine-learning
feat/rocm
chore/async-hash-file
feat/shared-link-view-count
feat/rotation
feat/graphql
feat/job-ids
feat/ignore-library-permission-error
feat/docker-compose-builder
feat/kysely-typeorm
mobile/onboarding
no-video-player
fix/server-qsv-output-format
chore/server-geodata-tweaks
mobile/native-video-player-no-hero
feat/xxhash
fix/docs-concurrency
feat/preload-ml-textual-model
feat/local-tileserver
refactor/exif-orientation
original-path-infix
refactor/mobile/login-form-1
feat/server-editor-endpoints
fix/server-qsv-vbr
fix-mobile-db-problems
feat/ml-armnn-conversion
feat/mobile/backup-with-album-info
feat/fast-initial-sync-1
chore/handle-output_dims
feat/server-more-robust-generation
feat/unassign-faces
feat/shortcuts-on-asset-grid
feat/background-upload
feat/capacitor-mobile-app-poc
feat/server-nvenc-hw-decoding
release/v1.105
fix/mobile-fetch-non-archive
feat/fine-grained-access-controls
web/automation-ui
feat/mobile-server-endpoint-save-dropdown
feat/blurhash-thumbnail
object-storage
feat/memories-animations
dev/metrics
ml/tflite
feat/ml-export-cli
v2.5.3
v2.5.2
v2.5.1
v2.5.0
v2.4.1
v2.4.0
v2.3.1
v2.3.0
v2.2.3
v2.2.2
v2.2.1
v2.2.0
v2.1.0
v2.0.1
v2.0.0
v1.144.1
v1.144.0
v1.143.1
v1.143.0
v1.142.1
v1.142.0
v1.141.1
v1.141.0
v1.140.1
v1.140.0
v1.139.4
v1.139.3
v1.139.2
v1.139.1
v1.139.0
v1.138.1
v1.138.0
v1.137.3
v1.137.2
v1.137.1
v1.137.0
v1.136.0
v1.135.3
v1.135.2
v1.135.1
v1.135.0
v1.134.0
v1.133.1
v1.133.0
v1.132.3
v1.132.2
v1.132.1
v1.132.0
v1.131.3
v1.131.2
v1.131.1
v1.131.0
v1.130.3
v1.130.2
v1.130.1
v1.130.0
v1.129.0
v1.128.0
v1.127.0
v1.126.1
v1.126.0
v1.125.7
v1.125.6
v1.125.5
v1.125.4
v1.125.3
v1.125.2
v1.125.1
v1.125.0
v1.124.2
v1.124.1
v1.124.0
v1.123.0
v1.122.3
v1.122.2
v1.122.1
v1.122.0
v1.121.0
v1.120.2
v1.120.1
v1.120.0
v1.119.1
v1.119.0
v1.118.2
v1.118.1
v1.118.0
v1.117.0
v1.116.2
v1.116.1
v1.116.0
v1.115.0
v1.114.0
v1.113.1
v1.113.0
v1.112.1
v1.112.0
v1.111.0
v1.110.0
v1.109.2
v1.109.1
v1.109.0
v1.108.0
v1.107.2
v1.107.1
v1.107.0
v1.106.4
v1.106.3
v1.106.2
v1.106.1
v1.106.0
v1.105.1
v1.105.0
v1.104.0
v1.103.1
v1.103.0
v1.102.3
v1.102.2
v1.102.1
v1.102.0
v1.101.0
v1.100.0
v1.99.0
v1.98.2
v1.98.1
v1.98.0
v1.97.0
v1.96.0
v1.95.1
v1.95.0
v1.94.1
v1.94.0
v1.93.3
v1.93.2
v1.93.1
v1.93.0
v1.92.1
v1.92.0
v1.91.4
v1.91.3
v1.91.2
v1.91.1
v1.91.0
v1.90.2
v1.90.1
v1.90.0
v1.89.0
v1.88.2
v1.88.1
v1.88.0
v1.87.0
v1.86.0
v1.85.0
v1.84.0
v1.83.0
v1.82.1
v1.82.0
v1.81.1
v1.81.0
v1.80.0
v1.79.1
v1.79.0
v1.78.1
v1.78.0
v1.77.0
v1.76.1
v1.76.0
v1.75.2
v1.75.1
v1.75.0
v1.74.0
v1.73.0
v1.72.2
v1.72.1
v1.72.0
v1.71.0
v1.70.0
v1.69.0
v1.68.0
v1.67.2
v1.67.1
v1.67.0
v1.66.1
v1.66.0
v1.65.0
v1.64.0
v1.63.2
v1.63.1
v1.63.0
v1.62.1
v1.62.0
v1.61.0
v1.60.0
v1.59.1
v1.59.0
v1.58.0
v1.57.1
v1.57.0
v1.56.2
v1.56.1
v1.56.0
v1.55.1
v1.55.0
v1.54.1
v1.54.0
v1.53.0
v1.52.1
v1.52.0
v1.51.2
v1.51.1
v1.51.0
v1.50.1
v1.50.0
v1.49.0
v1.48.1
v1.48.0
v1.47.3
v1.47.2
v1.47.1
v1.47.0
v1.46.1
v1.46.0
v1.45.0
v1.44.0
v1.43.1
v1.43.0
v1.42.0_65-dev
v1.41.1_64-dev
v1.41.0_64-dev
v1.40.1_63-dev
v1.40.0_63-dev
v1.39.0_61-dev
v1.38.2_60-dev
v1.38.1_60-dev
v1.38.0_60-dev
v1.37.0_58-dev
v1.36.2_56-dev
v1.36.1_55-dev
v1.36.0_55-dev
v1.35.0_54-dev
v1.34.0_53-dev
v1.33.1_52-dev
v1.33.0_52-dev
v1.32.1_51-dev
v1.32.0_50-dev
v1.31.1_49-dev
v1.31.0_49-dev
v1.30.2_48-dev
v1.30.0_46-dev
v1.29.6_45-dev
v1.29.6_44-dev
v1.29.5_44-dev
v1.29.4_44-dev
v1.29.3_43-dev
v1.29.2_43-dev
v1.29.1_43-dev
v1.29.0_42-dev
v1.28.4_41-dev
v1.28.4_42-dev
v1.28.3_41-dev
v1.28.2_40-dev
v1.28.1_39-dev
v1.28.0_38-dev
v1.27.0_37-dev
v1.26.0_36-dev
v1.25.0_35-dev
v1.24.0_34-dev
v1.23.0_33-dev
v1.22.0_32-dev
v1.21.1_31-dev
v1.21.0_31-dev
v1.20.3_30-dev
v1.20.2_30-dev
v1.20.1_30-dev
v1.20.0_30-dev
v1.19.1_29-dev
v1.19.0_29-dev
v1.18.0_27-dev
v1.17.0_25-dev
v1.16.0_23-dev
v1.15.1_21-dev
v1.15.0_21-dev
v1.14.0_21-dev
v1.13.0_20-dev
v1.12.0_18-dev
v1.11.0_17-dev
v1.10.0_15-dev
v1.9.1_14-dev
v1.9.0_13-dev
v1.8.0_12-dev
v1.7.0_11-dev
v1.6.0_10-dev
v1.5.1+9-dev
v1.5.0+8-dev
v1.4.0+7-dev
v1.4.0+6-dev
v1.4.0-dev
v1.3.0-dev
v1.3.1-dev
v0.6-dev
v0.5-dev
v0.4-dev
v0.3-dev
v0.2-dev
first-android-release
No Label
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: immich-app/immich#1459
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @dankasak on GitHub (Oct 16, 2023).
The bug
My understanding ( based on reviewing other immich bugs ) is that immich should attempt to parse the creation date from EXIF tags, and if this fails, it should fallback to the file creation date. I have quite a few examples where the date in immich is neither of these dates. For example:
The date as showing in immich is 14 Oct 2023 Sat, 1:52 am GMT+11:00
If I extract metadata ( which appears correct ) with imagemagick's "identify", I can see:
Properties:
exif:DateTime: 2023:10:13 14:52:26
exif:DateTimeDigitized: 2023:10:13 14:52:26
exif:DateTimeOriginal: 2023:10:13 14:52:26
Full command/output:
[dankasak@mercury 2023-10-13]$ identify -verbose IMG_20231013_145224.jpg
Image:
Filename: IMG_20231013_145224.jpg
Permissions: rw-r--r--
Format: JPEG (Joint Photographic Experts Group JFIF format)
Mime type: image/jpeg
Class: DirectClass
Geometry: 3648x2736+0+0
Resolution: 72x72
Print size: 50.6667x38
Units: PixelsPerInch
Colorspace: sRGB
Type: TrueColor
Base type: Undefined
Endianness: Undefined
Depth: 8-bit
Channels: 3.0
Channel depth:
Red: 8-bit
Green: 8-bit
Blue: 8-bit
Channel statistics:
Pixels: 9980928
Red:
min: 0 (0)
max: 255 (1)
mean: 116.015 (0.454962)
median: 123 (0.482353)
standard deviation: 55.0101 (0.215726)
kurtosis: -0.679831
skewness: -0.171618
entropy: 0.963029
Green:
min: 0 (0)
max: 251 (0.984314)
mean: 104.081 (0.408161)
median: 104 (0.407843)
standard deviation: 55.6608 (0.218278)
kurtosis: -0.720299
skewness: 0.252223
entropy: 0.965084
Blue:
min: 0 (0)
max: 250 (0.980392)
mean: 89.4371 (0.350734)
median: 82 (0.321569)
standard deviation: 55.9944 (0.219586)
kurtosis: -0.535097
skewness: 0.569715
entropy: 0.955618
Image statistics:
Overall:
min: 0 (0)
max: 255 (1)
mean: 103.178 (0.404619)
median: 103 (0.403922)
standard deviation: 55.5551 (0.217863)
kurtosis: -0.819718
skewness: 0.202407
entropy: 0.961244
Rendering intent: Perceptual
Gamma: 0.454545
Chromaticity:
red primary: (0.64,0.33,0.03)
green primary: (0.3,0.6,0.1)
blue primary: (0.15,0.06,0.79)
white point: (0.3127,0.329,0.3583)
Matte color: grey74
Background color: white
Border color: srgb(223,223,223)
Transparent color: black
Interlace: None
Intensity: Undefined
Compose: Over
Page geometry: 3648x2736+0+0
Dispose: Undefined
Iterations: 0
Compression: JPEG
Quality: 97
Orientation: Undefined
Profiles:
Profile-app7: 28532 bytes
Profile-app8: 35122 bytes
Profile-app9: 21562 bytes
Profile-exif: 42684 bytes
Properties:
date:create: 2023-10-15T07:26:26+00:00
date:modify: 2023-10-15T07:26:24+00:00
date:timestamp: 2023-10-16T03:57:01+00:00
exif:ApertureValue: 135/100
exif:BitsPerSample: 8, 8, 8
exif:BrightnessValue: 0/1
exif:ColorSpace: 1
exif:ComponentsConfiguration: ...
exif:CompressedBitsPerPixel: 95/100
exif:Contrast: 0
exif:CustomRendered: 1
exif:DateTime: 2023:10:13 14:52:26
exif:DateTimeDigitized: 2023:10:13 14:52:26
exif:DateTimeOriginal: 2023:10:13 14:52:26
exif:DeviceSettingDescription: ipp
exif:DigitalZoomRatio: 100/100
exif:DocumentName:
exif:ExifOffset: 284
exif:ExifVersion: 0210
exif:ExposureBiasValue: 0/10
exif:ExposureMode: 0
exif:ExposureProgram: 2
exif:ExposureTime: 16667000/1000000000
exif:FileSource: .
exif:Flash: 0
exif:FlashPixVersion: 0100
exif:FNumber: 160/100
exif:FocalLength: 5560/1000
exif:FocalLengthIn35mmFilm: 27
exif:GainControl: 0
exif:ImageDescription: rpt
exif:ImageLength: 2736
exif:ImageWidth: 3648
exif:InteroperabilityOffset: 1310
exif:LightSource: 1
exif:Make: HUAWEI
exif:MakerNote: ####.
exif:MaxApertureValue: 135/100
exif:MeteringMode: 5
exif:Model: VOG-L29
exif:PhotographicSensitivity: 100
exif:PixelXDimension: 3648
exif:PixelYDimension: 2736
exif:Saturation: 0
exif:SceneCaptureType: 0
exif:SceneType: .
exif:SensingMethod: 2
exif:Sharpness: 0
exif:ShutterSpeedValue: 298973/10000
exif:Software: VOG-L29 12.0.0.169(C636E1R1P1)
exif:SubjectDistanceRange: 0
exif:SubSecTime: 280916
exif:SubSecTimeDigitized: 280916
exif:SubSecTimeOriginal: 280916
exif:thumbnail:Compression: 6
exif:thumbnail:ImageLength: 384
exif:thumbnail:ImageWidth: 512
exif:thumbnail:InteroperabilityIndex: R98
exif:thumbnail:InteroperabilityVersion: 0100
exif:thumbnail:JPEGInterchangeFormat: 1470
exif:thumbnail:JPEGInterchangeFormatLength: 41208
exif:thumbnail:Orientation: 0
exif:thumbnail:ResolutionUnit: 2
exif:thumbnail:XResolution: 72/1
exif:thumbnail:YResolution: 72/1
exif:WhiteBalance: 0
exif:YCbCrPositioning: 1
jpeg:colorspace: 2
jpeg:sampling-factor: 2x2,1x1,1x1
signature: 37a0638fd0154d34ba9e27ad7be7d938a62a88f0d5c8001d7271aa0dbce39655
Artifacts:
verbose: true
Tainted: False
Filesize: 6.33305MiB
Number pixels: 9.98093M
Pixel cache type: Memory
Pixels per second: 147.342MP
User time: 0.060u
Elapsed time: 0:01.067
Version: ImageMagick 7.1.1-15 Q16-HDRI x86_64 21298 https://imagemagick.org
I did not edit any of these on my device, so I can't see how the image "creation" date would be different from the date in exif metadata.
The OS that Immich Server is running on
Fedora / podman
Version of Immich Server
v1.81.1
Version of Immich Mobile App
1.80.0
Platform with the issue
Your docker-compose.yml content
Your .env content
Reproduction steps
Additional information
No response
@deiop commented on GitHub (Oct 16, 2023):
Timezone difference ?
@dankasak commented on GitHub (Oct 16, 2023):
Hmmm yes actually - it looks like the timestamp in exif data from my phone is just "local time", and doesn't include an offset. Looking at some photos from a recent holiday ( the current photo is one such example ), and thinking about how I'd like this to behave as a user, I just want the local timestamp used ... ie if I took a photo at 7am in UTC+7:00, I want it to appear as being taken at 7am ... even if the immich server, or my client, or something else is in some other timezone.
How are timezones handled? In my case, I can see that there is no timezone / UTC offset in the exif data. But immich is displaying timestamps with my UTC offset ( UTC +11 ) - where is this coming from?
@jrasm91 commented on GitHub (Oct 16, 2023):
Timezone is inferred from exif, unless it doesn't have any timezone information, then it defaults to the local time zone. Not a whole lot more we can do. You can fix your metadata and re-upload the image though.
@dankasak commented on GitHub (Oct 17, 2023):
Yes I've considered this - but to be honest, I can't imagine this being a palatable option for most people.
Yes that was what I expected, however I'm seeing inconsistent behaviour in this respect. For example, the following image has the correct timestamp:
I see the following metadata from imagemagick:
Properties:
date:create: 2023-10-16T23:34:43+00:00
date:modify: 2023-10-16T23:34:40+00:00
date:timestamp: 2023-10-16T23:35:02+00:00
...
exif:DateTime: 2023:09:24 15:14:24
exif:DateTimeDigitized: 2023:09:24 15:14:24
exif:DateTimeOriginal: 2023:09:24 15:14:24
In this case, the correct timestamp is 2023:09:24 15:14:24 - and immich is showing "details":
24 Sept 2023 Sun, 3:14 pm GMT+10:00
I have not been altering my TZ, or anything else on the server running immich. So it seems that sometimes this timezone detection is working, and others it is not.
@jrasm91 commented on GitHub (Oct 17, 2023):
The image has gps coordinates that indicate it was taken in the
Australia/Sydneyand it assumes2023:09:24 15:14:24is local time in that timezone. So again, working as designed.BTW, we don't use imagemagick, we use
exiftool <filename>more or less.@jrasm91 commented on GitHub (Oct 17, 2023):
Well, the available options include:
@dm3010 commented on GitHub (Oct 17, 2023):
Found the same problem.
There are two photos taken with the same phone on the same day (3 hours apart):
IMG_20230822_150057.jpg
IMG_20230822_180153.jpg
Uploaded via mobile app
Before uploading to the server, the info section in the app shows the correct time for all photos and videos
After uploading the first photo shows +3 hours, i.e. 18:00:57 GMT+03:00.
The second photo is set correctly for my time zone, 18:01:53 GMT+03:00.
Exif data in both photos are made by the same camera
VID_20230822_145410.mp4
Video uploaded from the same series of photos time set to -3 hours
11:57:10 UTC, i.e. seems to be correct, but not in my time zone
@jrasm91 commented on GitHub (Oct 17, 2023):
Going to close this as everything is currently working as designed and there are no action steps to be taken.
@dm3010 you can open a new issue if you want me to take a look at your files. Please post the exif of the file in question, which should include date time values and optionally gps data if available.
@psyciknz commented on GitHub (Jul 2, 2024):
With reference to XMP files. I have an image where I've recently created an XMP file for it.
When it has been rescanned by immich in the external library, the photo has been dated the XMP creation time and the file exif date/time has been ignored.