immich
immich copied to clipboard
Feature: iOS Live Photos
iPhone Live photos are converted into images. If Immich is used as a backup, the old status cannot be restored.
It would be nice to have compatibility with Samsung Motion Photos and the Google Format too.
They are implemented a bit differently from Apple. Instead of a MOV file next to it, it has a mp4 integrated into the jpg/heic file. This repo has a good deconstruction of the format.
Excited to see this happen, this is the last major thing that I feel I'm missing to migrate from Google Photos!
Some update on this issue. The current library we are using for reading the asset on the mobile device can extract Live Photos as 2 separate files, one photo and on video.
However, currently the library doesn't have a way to retrieve the two files back into one yet. So we are stilling waiting on it to be implemented before moving forward with our implementation of Live Photos.
Thanks for the update! The live fotos feature is what I'm currently waiting on before making the jump.
@alextran1502 I don't think we need to re-assemble the files back into one. We just need to link the two files (and probably hide the movie file from the timeline).
A very good summary about live photos can be found here: https://github.com/LycheeOrg/Lychee/issues/378#issuecomment-545428092
@meichthys Why would you want to destruct the fotos?
Afaik we need to destruct the file to get to the video. I see that it could still be important to be able to reconstruct the file if we want to restore from back up, but just for viewing the files, it probably would not be necessary.
Most other iOS apps I know save two files and show them as one live photo in the app. When I export one Live Photo on macOS I get two files. When I import both they are automatically merged by the Photos app.
Yes. That sounds right to me. The photo and live video are linked with a uuid.
Digging through the-photo-gallery I noticed that imagor is using libvips to work with heic fotos. They in turn are using https://github.com/strukturag/libheif for de-/encoding. This library seems to support avif as well. But I'm not to sure about further details.