Comments (13)
This is very important. I have stumbled on this issue so many times with Picasa. Had all my metadata overwritten if by mistake forgot to have a harddrive with photos connected. Metadata needs to be next to images and in some readable/editable format like json/xml.
from photoprism.
That's actually an issue with most modern software out there... primary storage is a database, ideally somewhere in the cloud, some distributed NoSQL bleeding edge technology... Works great in terms of scalability (when running Web apps with millions of users), but how can regular users create a reliable backup from that? That they can use/read in 20 or 40 years? Photos are not just for the moment.
from photoprism.
This is a great idea. Text file has a lot of benefits for backup purpose. Format like YAML can be easily tracked in version control system like git, most of editing conflict can be resolved automatically. It can be edited using text editor when needed.
Storing metadata in original image file is nice to have, it serves different purpose though. For backup purpose, it is better not to modify original file, so that original file can be de-duplicated using hash.
from photoprism.
Darktable docs for sidecar files: https://www.darktable.org/usermanual/en/sidecar_files.html
from photoprism.
Created a wiki page for XMP sidecar files: https://github.com/photoprism/photoprism/wiki/XMP
from photoprism.
What about writing those kind of metadata in a way where they aren't detached from the actual file, e.g. FDO CommonExtendedAttributes on Linux/OS X (see also: https://gist.github.com/gwpl/a00e18bc150f1e3518335d13c5e46ad7), NTFS Alternate Data Streams on Windows?
from photoprism.
You should be able to create a long-term backup and edit all file using regular tools (in this case: text editor). Wouldn't work with filesystem specific metadata, right?
from photoprism.
Unfortunately yes :(
from photoprism.
Personally I'd prefer to have the meta data written back to the image file (as XMP/IPTC/Exif tags). That way the info is not lost when the image is moved or copied somewhere else (and reimported in a different instance).
from photoprism.
@splitbrain That way, the md5/sha fingerprint would change, which makes it much more difficult to detect duplicate imports. Also XMP files are human readable, other than binary data inside image files.
from photoprism.
Still think we should do this, maybe soon. Using XMP seems difficult and we can't write data back to XMP files yet: https://github.com/photoprism/photoprism/wiki/XMP
from photoprism.
I would vote for TOML
from photoprism.
Implemented. Please open a new issue if you find bugs!
from photoprism.
Related Issues (20)
- Videos: Support for HTTP Live Streaming (HLS) with M3U8 HOT 1
- Videos: Support workers (like Peertube runners) for distributed transcoding
- Videos: Upgrade FFmpeg to v7.x for faster transcoding and extended file format support
- Only first "Person in Image" is added to People tab when import photo with exif metadata HOT 1
- Places: Include videos in the map-based place browser (the 'Places' view) HOT 2
- Indexing: (Re)index selected photos/videos HOT 1
- Correct thumbnails, after clicking on them the wrong photo is displayed (for some photos) HOT 2
- Metadata: Don't ignore stop words when generating titles from file names HOT 2
- Photoprism gives space error and refused to start
- PhotoSync App Password HOT 1
- UX: Support timeline feature HOT 2
- Image Import seems to ignore visually similar image with different SHA1sums. HOT 2
- Portainer stack setup does not work if you change PHOTOPRISM_DATABASE_PASSWORD from "insecure" to anything else. HOT 1
- Orientation operation, returned error 500 HOT 4
- Search: Enable Title-Based Sorting HOT 3
- New face can't be named – Entity not found HOT 11
- Sharing: Add names to the secret token of the link HOT 1
- Cannot create apps and services HOT 2
- MariaDB binay logs growing more than 1GB per hour after upgrading to Build 240420-ef5f14bc4 HOT 4
- Config for change Video Transcoding coder HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from photoprism.