mirror of
https://github.com/immich-app/immich.git
synced 2026-02-25 03:12:21 +03:00
Some image files not able to generate thumbnails #7729
Closed
opened 2026-02-05 13:16:11 +03:00 by OVERLORD
·
13 comments
No Branch/Tag Specified
main
uhthomas/feat-mobile-search-results
feat/library-offline-stats
chore/translations
uhthomas/fix-mobile-search-results
release/next
renovate/flutter
feat/splash-screen-error
feat/mobile-edit-2-server-sync-entity
update-pwa
refactor/star-rating
uhthomas/feat-sort-smart-search
renovate/github-cqlabs-homebrew-dcm-1.x
push-vxwxqoulmxun
push-zlzxxyywnmtr
chore/deduplicate-storage-template-example
fix/download-button
fix/maintenance-reload
feat/video-player
feat/mobile-editing
feat/use-native-clients
refactor/remove-replace-with-upload
push-snrprxmlposz
push-okmnxsumoyzr
uhthomas/chore-mobile-maplibre
uhthomas/mobile-fix-asset-details-album-pop
feat/crawl-wrapper
feat/open-in-browser
push-skvzqoozqkpl
feat/custom-date-range
feat/edit-filters
fix/locale-settings-desc
push-xyozownmuwqp
push-lvyturrtwkrq
push-mvnsqpxklmnu
push-ztrmyrpuwvow
push-rsywxvptwxuv
push-pvvtwywwqzvy
postgres-socketio
feat/pg-queue
proposal/zod
refactor/asset-upload
feat/integrity-checks-izzy
renovate/connectivity_plus-7.x
better-project-structure
uhthomas/mobile-feat-asset-viewer-details
fix/ml-rocm-build
fix/25803
feat/asset-file-apis
midzelis/wip
push-zpwsovysllvn
push-nwxlpmyzkyrl
feature/bottom-buttons-order
sqlite_thumbs
fix-keep-correct-ios-shared-album-asset
fix-memory-generation-and-display
push-vpxwmwwxwnvw
fix-migration-width-height
revert/prettier-translations
shared-deep-link-handler
feat/thumbnail-native-clients
feat/platform-clients
fix/foreground-cloud-sync
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
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
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
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
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
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
vet
tmp/demo-snapshot-preview
fix/server-migration-file-extension
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/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/unassign-faces
feat/shortcuts-on-asset-grid
feat/capacitor-mobile-app-poc
feat/server-nvenc-hw-decoding
fix/mobile-fetch-non-archive
web/automation-ui
feat/mobile-server-endpoint-save-dropdown
object-storage
feat/memories-animations
dev/metrics
ml/tflite
feat/ml-export-cli
v2.5.6
v2.5.5
v2.5.4
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
Labels
Clear labels
accessibility
changelog:enhancement
changelog:security
changelog:skip
changelog:translation
cli
date-time
dependencies
documentation
external-library
format
good first issue
mobile-beta
mobile-beta
mobile-beta
needs-answer
nice to have
pull-request
sharing
tech-debt
📱mobile
🖥️web
🗄️server
🧠machine-learning
Mirrored from GitHub Pull Request
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#7729
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 @TerMorab on GitHub (Nov 3, 2025).
I have searched the existing issues, both open and closed, to make sure this is not a duplicate report.
The bug
As hasmar04 already stated in the issue #23466, there seems a bug in the creation of thumbnails for specific images.
I am facing issues the same way as @hasmar04 does. From my large store of pictures, that I'm managing with Immich from my galaxy phone, I found, since the update to the immich version above 2.0.x, that a bunch of photos would not generate thumbnails any more. But for no reason, other did. Same format (haic, jpg, jpeg, png), same phone, same app for uploading.
But what I figured out is, it looks like not format specific but a question of the size of the image.
Trying to upload a pic of the size 9 MP / 4000 x 2252 / 2,9 MiB / heic (from the web view of immich) does lead to no thumbs, no matter, if you try to create thumbs of webp or jpeg or if you manually try to recreate thumbs.
But going on the phone and resizing the same image to 6 MP / 3200 x 1800 / 1,9 MiB / heic, uploading it to immich and let the thumbs generate, will do the trick. The thumbs are there, no errors showing up.
Not sure if it comes from the ration or the whole size of the images, it is reproducible.
Doing a bit of more research I came up with the following finding:
Working size of any kind of image (heic, png, jpg,...:
1816 x 4032 px
3968 x 2232 px
2268 x 4032 px
4032 x 2268 px
not working, in no format at all
4032 x 1816 px
That's the only size, where I see no thumbs generated for. But because I changed my phone lately, the standard size comes with 4032 x 1816 and makes a whole mess.
I can not upload a heic file, for it's not allowed.
The OS that Immich Server is running on
Home Assistant OS
Version of Immich Server
2.2.1
Version of Immich Mobile App
2.2.1
Platform with the issue
Device make and model
Samsung S25 Ultra
Your docker-compose.yml content
Your .env content
Reproduction steps
...
Relevant log output
Additional information
No response
@bo0tzz commented on GitHub (Nov 3, 2025):
I strongly doubt that this is a reliable indication that the size of the image matters; more likely, the tool that resizes it somehow also fixes whatever is wrong with it.
@TerMorab commented on GitHub (Nov 3, 2025):
I was curious about it too, that the size could be the one that matters. But I don't use a tool to rezise the image, it is enough to take a picture not in landscape format but in portrait mode with the same resolution and size to make it work.
4032 x 1816 px - no thumb
1816 x 4032 px - thumbs are there.
Same phone, no change to the resolution.
@hasmar04 commented on GitHub (Nov 4, 2025):
In my situation, the issue seemed to come from a bug in the Galaxy S21 photo app not saving the photos correctly, but close enough that the Samsung Gallery and Google Photos would process them. Some photos were taken in the same orientation (and therefore same resolution) as others, and some would work and some not. I also no longer have an issue on my Galaxy S25 with new photos.
@Jan-Nox commented on GitHub (Nov 4, 2025):
I've had the same issue using the browser upload in Firefox using photos from a Samsung Galaxy 22.
I Had the idea to pre-compress the original photo using a third-party software (TinyPNG on the internet and Imagine on a Windows desktop.).
I recognized that despite the same image dimensions, the compressed photos would actually generate the thumbnails, but not the original ones.
Original Image Details:

Dimensions: 4,000px x 3,000px
Size: 3,683,329 Bytes
EXIF details:
Compressed Image Details:

Dimensions: 4,000px x 3,000px
Size: 458,710 Bytes
EXIF details:
I also tried to remove all EXIF data from the image and using the original file to upload - No thumbnail has been created here.
That's a total shot in the dark, but could this issue be related to the compression algo of different camera models or manufacturers?
I've uploaded a file from my iPhone via browser, where I could NOT reproduce this issue.
But, since there are two different generations from Samsung Galaxy phones involved, I assume this issue is still kind of related to the Immich update.
@Jan-Nox commented on GitHub (Nov 4, 2025):
I've just stumbled opon your comment and tested that. So our Immich server doesn't make a difference between landscape or portrait photos from our Samsung Galaxy S22 - Both photos won't have thumbnails.
@hasmar04 commented on GitHub (Nov 4, 2025):
I think what you have also identified is that there is an issue with the Samsung Camera app, and some apps like Samsung Gallery, Google Photos and TinyPNG do not follow the HEIC format as strictly as Sharp, the package used by Immich for HEIC processing, does. And by compressing it, you are creating a whole new file that actually meets the format and therefore Immich is happy.
For instance, my method to "fix" this issue was to find each photo that was problematic, open it in Samsung Gallery and then use the "Save as JPG" option, which was then uploaded to Immich. Because this completely rewrites the file, it now generates thumbnails.
@TerMorab commented on GitHub (Nov 4, 2025):
One more finding. It ist not the HEIC format, that couldn't be interpreted in the right manner. I made 4 pictures with different orientation (landscape / portrait) with the phone. 2 in heic format, 2 in jpeg. Both portrait orientated pictures show up with thumbnails in the web view. The landscape ones have no thumbs.
The size is the same for all, only the orientation differs.
Attached the pics for reproduction.
immich-20251104_133349.zip
@hasmar04 commented on GitHub (Nov 4, 2025):
What is the error when you try and produce thumbnails for the heic vs the JPG?
They is a very interesting find. My issue must have been different, because the photos that didn't work for me on my S22 were a kid of portrait and landscape.
@waqasali-AR commented on GitHub (Nov 5, 2025):
Edit: one of the images, 4.6mb, 4000 x 3000 pixel. Download fine and can view on my oneplus fine. I have been uploading from this phone before v2 and it was fine.
Same issue here
Jpeg imgaes uploaded from wifes galaxy S24 not generating thumbnail and can not view them on web or app.
App throws this exception. Will check server log when i log into server and add them here.
Error loading image: Exception: Invalid image data
#0 _futurize (dart:ui/painting.dart:7991)
#1 ImageDescriptor.encoded (dart:ui/painting.dart:7785)
#2 instantiateImageCodecWithSize (dart:ui/painting.dart:2558)
#3 PaintingBinding.instantiateImageCodecWithSize (package:flutter/src/painting/binding.dart:147)
#4 RemoteImageRequest._decodeBuffer (package:immich_mobile/infrastructure/loaders/remote_image_request.dart:164)
#5 RemoteImageRequest.load (package:immich_mobile/infrastructure/loaders/remote_image_request.dart:32)
#6 CancellableImageProviderMixin.loadRequest (package:immich_mobile/presentation/widgets/images/image_provider.dart:61)
#7 ImageStreamCompleter.setImage (package:flutter/src/painting/image_stream.dart:724)
@TerMorab commented on GitHub (Nov 5, 2025):
Image size matters!
I just created a set of test images with PhotoFiltre 7. All images the same kind, same format (jpeg) but different dimensions:
2500.jpg 2500 x 1653 px
2001.jpg 2001 x 1653 px
2001x1179.jpg 2001 x 1179 px - just for checking, if ratio has influence too
2000.jpg 2000 x 1653 px
1000.jpg 1000 x 1653 px
Uploaded all images via Web UI and waited for the thumbnails to show up.
Image 1000.jpg and 2000.jpg created a thumbnail for, all other images above 2000 x nnnn have no thumbnail generated.
Only for the two working images I see the following log entries:
[11/05/25 11:27:54] INFO Loading detection model "PP-OCRv5_mobile" to memory [11/05/25 11:27:54] INFO Setting execution providers to ['CPUExecutionProvider'], in descending order of preference [11/05/25 11:27:54] INFO Using engine_name: onnxruntime [11/05/25 11:27:58] INFO Loading recognition model 'PP-OCRv5_mobile' to memory [11/05/25 11:27:58] INFO Setting execution providers to ['CPUExecutionProvider'], in descending order of preference [11/05/25 11:27:59] INFO Using engine_name: onnxruntime [11/05/25 11:27:59] INFO Loading recognition model 'buffalo_l' to memory [11/05/25 11:27:59] INFO Setting execution providers to ['CPUExecutionProvider'], in descending order of preferenceIn the WebUI of Immich it looks like that
Test images for reproduction
test_images.zip
Please, could someone try to reproduce with the provided files what I am facing here?
I tried to evaluate deeper logs from the immich docker, but that's all I've got.
@Jan-Nox commented on GitHub (Nov 5, 2025):
Hi TerMorab,
unfortunately I was not able to reproduce that behavior with your provided test images.
All thumbnails have been generated successfully after uploading them via webUI from my Win 11 desktop using Firefox 144.0.2x64 to my Immich server v2.2.2
Also, the docker logs don't show up anything suspicious.
@TerMorab commented on GitHub (Nov 5, 2025):
OK. Thank you @Jan-Nox for making me nervous ;-)
Now I'm stuck with this strange behavior. My Immich Server Version is 2.2.1
I will wait, till the Homeassistant AddOn provider pushes the latest version out.
Are there any hot spots, where I could possibly find additional information about whats going wrong? Im not the docker guy, so any support would be appreciated.
@bo0tzz commented on GitHub (Nov 5, 2025):
The homeassistant addon is a strange custom docker image, and doesn't use our official install. Thumbnail generation is pretty sensitive to the tools & libraries installed on a system level, so this is probably due to the installation method you're using.