Page 1 of 1

Puzzled about what is going on internally when a category value is changed and changed data is written to XMP data.

Posted: Sat Aug 23, 2025 10:51 am
by mkc73
I have xnview settings set so that categories are written out to the XMP data in each image.

If I select say 10000 images in browser and update a category in all the images it takes about a minute to complete.

If I select the 10000 images in browser and update a category that only changes one image it still takes about 30 seconds to complete.

My understanding is that only one image changed and only one image file's XMP data would be updated which would be quite fast unless the software is doing something like reading each image file to see if it needs updating rather than just checking the catalogue to see if it needs updating.

What does the SW actually do with XMP data output enabled?

Re: Puzzled about what is going on internally when a category value is changed and changed data is written to XMP data.

Posted: Sat Aug 23, 2025 12:15 pm
by xnview
mkc73 wrote: Sat Aug 23, 2025 10:51 am If I select the 10000 images in browser and update a category that only changes one image it still takes about 30 seconds to complete.
if you update category it will be applied to all files

Re: Puzzled about what is going on internally when a category value is changed and changed data is written to XMP data.

Posted: Sat Aug 23, 2025 1:06 pm
by mkc73
Hi Pierre,

Thanks for your quick response.

Just to be clear : in the case where the category change only affects one file of the 10000 selected, all 10000 image files are updated ?

Re: Puzzled about what is going on internally when a category value is changed and changed data is written to XMP data.

Posted: Sat Aug 23, 2025 1:42 pm
by mkc73
So the 'change' flag is set for the entire selection and results in the entire selection being written out to XMP even if the change only actually affects one image.

Re: Puzzled about what is going on internally when a category value is changed and changed data is written to XMP data.

Posted: Sat Aug 23, 2025 4:39 pm
by michel038
I think XnViewMP must read xmp data of each image before knowing if the update is necessary or not.
There is no guarantee that the catalog matches the photo data before running the operation.
This is precisely the way for the user to ensure that, after the operation, the catalog will be synchronized with the photos' XMP data.

Re: Puzzled about what is going on internally when a category value is changed and changed data is written to XMP data.

Posted: Sat Aug 23, 2025 5:06 pm
by mkc73
That agrees with my observation of time taken for the operation - not nearly zero as expected, but about half of the time taken if all image files are changed.

I'm not sure I quite believe your rationale for this behaviour though. Either the image XMP data and the catalogue are in sync or they're not. SYncing some files randomly because they were selected is not going to help. I think you said previously that XnView provides functionality for ensuring files are in sync with catalogue.