Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve XMP parsing #1679

Merged
merged 2 commits into from
May 10, 2017
Merged

Improve XMP parsing #1679

merged 2 commits into from
May 10, 2017

Conversation

lgritz
Copy link
Collaborator

@lgritz lgritz commented Apr 25, 2017

  1. If pugi load_buffer finds syntax errors in the XML it is parsing, it returns an error code, which caused us to ignore the XMP block entirely, even the parts that were successfully parsed. It turns out that's a poor strategy, because lots of files have XMP that is ever so slightly malformed, so we weren't picking up their XMP at all! So, just ignore the fact there was a parsing error, go ahead and try to make sense of whatever portion (maybe all?) of the block was able to be parsed. It works!

  2. Added additional XMP tags for GPano, Google's Photo Sphere metadata schema.

  3. Replace linear search of the XMP tag list with a flat_map::find (which underneath is a sorted vector with binary search).

  4. Also add a bunch of camera raw (crs: prefix) XMP tags to the table.

  5. Upgrade our embedded PugiXML from 1.2 to 1.8.1.

lgritz added 2 commits May 9, 2017 23:04
1. If pugi load_buffer finds syntax errors in the XML it is parsing, it
returns an error code, which caused us to ignore the XMP block entirely.
It turns out that's a poor strategy, because lots of files have XMP that
is ever so slightly malformed, so we weren't picking up their XMP at
all! So, just ignore the fact there was a parsing error, go ahead and
try to make sense of whatever portion (maybe all?) of the block was able
to be parsed.  It works!

2. Added a additional XMP tags for GPano, Google's Photo Sphere metadata
schema.

3. Replace linear search of the XMP tag list with a flat_map::find
(which underneath is a sorted vector with binary search).

4. Also add a bunch of camera raw (crs: prefix) XMP tags to the table.
@lgritz lgritz merged commit 929ca1e into AcademySoftwareFoundation:master May 10, 2017
@lgritz lgritz deleted the lg-xmp branch May 10, 2017 06:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant