Giter VIP home page Giter VIP logo

Comments (5)

dkoeb avatar dkoeb commented on May 24, 2024

Just had a look at the code.
This is actually a safety measure of f-spot to not mess with metadata that seems corrupt. There seems to be a problem with your jpg files. Is it possible that this is related to the issue you reported a few months ago?
You might also want to try this branch: https://github.com/mono/f-spot/tree/users/dkoeb/report-corruptions. It reports the corruption reasons given by taglib-sharp. I have no file to test it myself although...

from f-spot.

codingdave avatar codingdave commented on May 24, 2024

Thanks for that branch. I have modified the code area s.t. I get a copy of each image that has this isse.
I have removed ~/.config/f-spot and imported my files again. Here the issue shows up very often.

First off I dont think the issue is related to my patch end of last year because I fixed an issue that was happening for all images from one camera. However the current issue is happening for very many different camera models.

The import of my folder took like 30 minutes but even now (90 minutes later) I still get new "metadata may be corrupt" messages. This does not seem to stop. In the attached log you will find many messages:

  • 4882 times: Impossibly large item count
  • 1174 times: Invalid item type
  • 49 times: Invalid IFD offset
  • 4 times: IFD loop detected

Further I get:
TAGLIB# DEBUG: Added ns2 prefix for http://www.digikam.org/ns/1.0/ namespace (XMP)
TAGLIB# DEBUG: Added ns3 prefix for http://ns.adobe.com/xap/1.0/sType/ResourceEvent# namespace (XMP)
TAGLIB# DEBUG: Added ns4 prefix for http://darktable.sf.net/ namespace (XMP)
TAGLIB# DEBUG: Added ns5 prefix for http://ns.adobe.com/lightroom/1.0/ namespace (XMP)
TAGLIB# DEBUG: Added ns6 prefix for http://ns.apple.com/adjustment-settings/1.0/ namespace (XMP)
TAGLIB# DEBUG: Added ns7 prefix for http://www.metadataworkinggroup.com/schemas/regions/ namespace (XMP)
TAGLIB# DEBUG: Added ns8 prefix for http://ns.apple.com/faceinfo/1.0/ namespace (XMP)
TAGLIB# DEBUG: Added ns9 prefix for http://ns.adobe.com/xmp/sType/Area# namespace (XMP)
TAGLIB# DEBUG: Added ns10 prefix for http://ns.oneplus.com/media/1.0/ namespace (XMP)
TAGLIB# DEBUG: Added ns11 prefix for http://ns.adobe.com/xap/1.0/sType/ResourceRef# namespace (XMP)
TAGLIB# DEBUG: Added ns12 prefix for http://ns.google.com/photos/1.0/image/ namespace (XMP)
TAGLIB# DEBUG: Added ns13 prefix for http://ns.adobe.com/xmp/note/ namespace (XMP)
TAGLIB# DEBUG: Added ns14 prefix for http://iptc.org/std/Iptc4xmpCore/1.0/xmlns/ namespace (XMP)
[Error 18:24:28.666] Error syncing metadata to file
System.Exception: XMP Segment is too big to render
at TagLib.Jpeg.File.RenderXMPSegment () [0x0004f] in :0
at TagLib.Jpeg.File.WriteMetadata () [0x0003f] in :0
at TagLib.Jpeg.File.Save () [0x00028] in :0
at FSpot.Utils.Metadata.SaveSafely (TagLib.Image.File metadata, Hyena.SafeUri photo_uri, System.Boolean always_sidecar) [0x000c4] in :0
at FSpot.Database.Jobs.SyncMetadataJob.WriteMetadataToImage (FSpot.Photo photo) [0x000b9] in <36ec76427fb34676bb6062e735cd2151>:0
at FSpot.Database.Jobs.SyncMetadataJob.Execute () [0x00053] in <36ec76427fb34676bb6062e735cd2151>:0
[Error 19:00:32.881] Error syncing metadata to file
System.Exception: XMP Segment is too big to render
at TagLib.Jpeg.File.RenderXMPSegment () [0x0004f] in :0
at TagLib.Jpeg.File.WriteMetadata () [0x0003f] in :0
at TagLib.Jpeg.File.Save () [0x00028] in :0
at FSpot.Utils.Metadata.SaveSafely (TagLib.Image.File metadata, Hyena.SafeUri photo_uri, System.Boolean always_sidecar) [0x000c4] in :0
at FSpot.Database.Jobs.SyncMetadataJob.WriteMetadataToImage (FSpot.Photo photo) [0x000b9] in <36ec76427fb34676bb6062e735cd2151>:0
at FSpot.Database.Jobs.SyncMetadataJob.Execute () [0x00053] in <36ec76427fb34676bb6062e735cd2151>:0
[Error 19:00:33.484] Error syncing metadata to file
System.Exception: XMP Segment is too big to render
at TagLib.Jpeg.File.RenderXMPSegment () [0x0004f] in :0
at TagLib.Jpeg.File.WriteMetadata () [0x0003f] in :0
at TagLib.Jpeg.File.Save () [0x00028] in :0
at FSpot.Utils.Metadata.SaveSafely (TagLib.Image.File metadata, Hyena.SafeUri photo_uri, System.Boolean always_sidecar) [0x000c4] in :0
at FSpot.Database.Jobs.SyncMetadataJob.WriteMetadataToImage (FSpot.Photo photo) [0x000b9] in <36ec76427fb34676bb6062e735cd2151>:0
at FSpot.Database.Jobs.SyncMetadataJob.Execute () [0x00053] in <36ec76427fb34676bb6062e735cd2151>:0

How to start?

Cheers,
David
f-spot_xmp_issue_small.txt

from f-spot.

codingdave avatar codingdave commented on May 24, 2024

The images were taken with

Make Rollei Model Rollei XS-10
Make Apple Model iPhone 5
Make CASIO COMPUTER CO.,LTD. Model EX-Z80
Make Canon Model Canon DIGITAL IXUS 120 IS
Make Canon Model Canon EOS 5D Mark II
Make Canon Model Canon PowerShot S95
Make EASTMAN KODAK COMPANY Model KODAK DX3600 DIGITAL CAMERA
Make FUJIFILM Model FinePix F100fd
Make FUJIFILM Model FinePix S5000
Make FUJIFILM Model XQ1
Make GoPro Model Hero3-Black Edition
Make HUAWEI Model HUAWEI GRA-L09
Make Hewlett-Packard Model Photosmart M407
Make Hewlett-Packard Model hp photosmart 735
Make KYOCERA Model CONTAX Tvs Digital
Make LGE Model Nexus 5
Make NIKON CORPORATION Model NIKON D40
Make NIKON CORPORATION Model NIKON D70
Make NIKON CORPORATION Model NIKON D7000
Make NIKON CORPORATION Model NIKON D70s
Make NIKON CORPORATION Model NIKON D750
Make NIKON CORPORATION Model NIKON D80
Make NIKON Model COOLPIX P300
Make NIKON Model COOLPIX S3000
Make NIKON Model COOLPIX S3100
Make NIKON Model E3100
Make OLYMPUS IMAGING CORP. Model FE4000,X920,X925
Make OnePlus Model ONEPLUS A3003
Make PENTAX Corporation Model PENTAX Optio S4i
Make Panasonic Model DMC-LX3
Make RICOH Model CX5
Make RICOH Model Caplio R2
Make SAMSUNG Model GT-I9000
Make SAMSUNG TECHWIN CO., LTD. Model Digimax A6
Make SONY Model DSC-HX400V
Make SONY Model DSC-HX90V
Make SONY Model DSC-RX100
Make SONY Model DSC-RX100M4
Make Zoran Corporation Model COACH 1.0

The software tags are

Software : 1.01
Software : f-spot version 0.3.5
Software : f-spot version 0.6.1.3
Software : Shotwell 0.9.3
Software : GIMP 2.6.8
Software : f-spot version 0.5.0.3
Software : f-spot version 0.9.0
Software : f-spot version 0.4.2
Software : Shotwell 0.18.0
Software : Ver.1.2
Software : ACD Systems digitalen Bildverarbeitung
Software : Shotwell 0.15.0
Software : Ver.1.11
Software : Digital Camera FinePix F100fd Ver1.02
Software : HD3.03.03.00
Software : 8.1
Software : OnePlus3-user 6.0.1 MMB29M 26 dev-keys
Software : OnePlus3-user 7.0 NRD90M 86 dev-keys
Software : OnePlus3-user 7.0 NRD90M 89 dev-keys
Software : OnePlus3-user 7.0 NRD90M 97 dev-keys
Software : OnePlus3-user 7.0 NRD90M 15 dev-keys
Software : HDR+ 1.0.76504408
Software : HDR+ 1.0.86512597
Software : GRA-L09C900B170
Software : OnePlus3-user 6.0.1 MMB29M 7 dev-keys
Software : GRA-L09C432B370
Software : OnePlus3-user 6.0.1 MMB29M 23 dev-keys
Software : OnePlus3-user 6.0.1 MMB29M 36 dev-keys
Software : Microsoft Windows Photo Viewer 6.1.7600.16385
Software : f-spot version 0.6.1.5

from f-spot.

dkoeb avatar dkoeb commented on May 24, 2024

Reason why you get those messages even after the import is finished is that f-spot triggers a background job that syncs metadata for imported images. This background job tries to write metadata from f-spot back to the images (if you have f-spot configured to do so).
For quite some of your images taglib-sharp reports to f-spot that it had issues to read the metadata already stored in your images. Thus, f-spot refuses to update the metadata within the images and falls back to writing it to .xmp files. So from f-spot's point of view I would say everything is ok.

Unfortunately, I know little to nothing about taglib-sharp and therefor can't tell if your images have broken metadata or if taglib-sharp should be improved to read more types of metadata.

@decriptor do you have better insight into taglib-sharp to answer this?

from f-spot.

codingdave avatar codingdave commented on May 24, 2024

from f-spot.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.