Deleting LR corrections in jpg versions of raw files

Started by DigPeter, May 14, 2014, 02:18:55 PM

Previous topic - Next topic

DigPeter

I use LR to convert RW2 files to jpg.  How can the LR correction data be deleted automatically from the jpg's metedata when the files are imported into IM?

Mario

IMatch has no automatic means to strip entire namespaces from the XMP record. All XMP-compliant applications are supposed to retain contents of the XMP data record they don't actively update in unmodified form.

To strip proprietary LR data from JPEG files, use the ECP.
When you export files from LR you usually have the choice which metadata you want to include. Leave out the LR data if possible.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

DigPeter

Quote from: Mario on May 14, 2014, 02:37:58 PM
IMatch has no automatic means to strip entire namespaces from the XMP record. All XMP-compliant applications are supposed to retain contents of the XMP data record they don't actively update in unmodified form.

To strip proprietary LR data from JPEG files, use the ECP.
When you export files from LR you usually have the choice which metadata you want to include. Leave out the LR data if possible.
Thanks Mario.  I was hoping that Metadata Template might do this.  I am afraid that ECP is a closed book, but I can do it outside IM with exif tool GUI.

Mario

That's an one liner. If you can do it in ExifToolGUI you can do it in the ECP.
What's the name of the namespace?
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

DigPeter

Quote from: Mario on May 14, 2014, 06:47:48 PM
What's the name of the namespace?
In exiftooGUI I check "-Xmp-Crs" and the GUI does the rest.

In IM's metadata browser the space is "Photoshop camera raw namespace"

Mario

Try:

-overwrite_original
-XMP-crs:all=
{Files}


Removes the camera raw namespace from the XMP of all selected files.
If you have the data in XMP files rather than in the image file itself, use


-overwrite_original
-XMP-crs:all=
{XMPFiles}

-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook


Mario

Sure :D
Just make sure you have your money ready, washed and shiny when IMatch 5 becomes available...    
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook


tvi55

Quote from: DigPeter on May 14, 2014, 02:18:55 PM
I use LR to convert RW2 files to jpg.  How can the LR correction data be deleted automatically from the jpg's metedata when the files are imported into IM?
Apart from the hints above I suggest that you change your export settings in LR in the metadata section:

Select the option which excludes the export of Camera Raw data (those which are stored in the XMP-crs name space).

DigPeter

Quote from: tvi55 on May 15, 2014, 05:17:59 PM
Quote from: DigPeter on May 14, 2014, 02:18:55 PM
I use LR to convert RW2 files to jpg.  How can the LR correction data be deleted automatically from the jpg's metedata when the files are imported into IM?
Apart from the hints above I suggest that you change your export settings in LR in the metadata section:

Select the option which excludes the export of Camera Raw data (those which are stored in the XMP-crs name space).
Thank you for the tip.  I have just tried it, but, as the wording implies, it also excludes shooting data and camera name, which I wish to retain.  I suppose it would too much for Adobe to have an option just to exclude LR corrections.  It might suit the customer. :(

Mario

-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

Aubrey

Polishing the money each week is becoming a chore. I'd rather give the job to you.
Each time I look at announcements another beta release arrives!

Aubrey

Mario

That's German Engineering for you. Always striving for perfection  ;D
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

Ferdinand

Quote from: DigPeter on May 15, 2014, 07:53:33 PM
[but, as the wording implies, it also excludes shooting data and camera name, which I wish to retain.  I suppose it would too much for Adobe to have an option just to exclude LR corrections.  It might suit the customer. :(

This is one reason why I like to propagate.  I've ever trusted *any* converter to get the metadata in its developed files right, although some are worse than others.

Ferdinand

An addendum to this.  If you also delete the LR space be careful to exempt hierarchical keywords, or they'll get wiped too, since they're in the LR space:

-overwrite_original
-XMP-lr:all=
--xmp-lr:hierarchicalSubject
{Files}



Ferdinand

First, my last post didn't make a lot of sense as there isn't much point in deleting the LR space.  There isn't much in there and it's worth keeping.  I was a little misled by the XMP propagation option that excludes both LR & CRS (which might be different in build 158).

Quote from: Mario on May 14, 2014, 08:12:37 PM
Try:

-overwrite_original
-XMP-crs:all=
{Files}


Removes the camera raw namespace from the XMP of all selected files.

I have a question about the ECP.  Yes, I've read the help file.  For this set of commands, is there any difference between "run once" and "run once for each file in selection".  There are no variables involved, so I assume no.  But if I sent a lot of files to the ECP, e.g. 5,000+, I thought perhaps ExifTool might gag on "run once" and that the other option might be safer. 

[I don't fully understand the difference between these two options - does "run once" have only one -execute command, or does it execute after each file? Does "run once for each file in selection" keep ExifTool in memory or is there a new instance for each file, which surely would be a lot slower?  Depending on the answers I may make suggestions for the help.]

A second question:  What's the best way to locate files with CRS metadata, using the filter?  I used a value filter on "XMP::crs\CameraProfile" on the assumption that each image processed this way would at least have to have a profile.  Anyone got any better ideas?

Mario

1. Run once creates an arg file from your arguments and then appends all file names to it. For each means that the arguments you use are added to an arg file, then one file name is append and an -execute. Then your args are appended again, and then another file name. It all depends on which arguments you use, and if you can apply them to more then one file.

2. I don't know much about the proprietary Adobe camera raw namespace. FAIK Adobe has not documented it officially. Phil has some info here: http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/XMP.html#crs.

Different versions of different Adobe products emit different kinds of CRS data. It's a moving target and a private namespace anyway. I would filter for several tags to be on the safe side.

If all you want to to is to strip the namespace from your files, run ExifTool with -xmp:crs= It will not update files which don't have the namespace.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

Ferdinand

The question about how to filter for CRS was directed at Peter who was trying to do the same thing. I wasn't expecting you to be an encyclopedia.

I want to be 100% clear about the ECP before I throw so many files at it.  So this is how the args file looks for the "run once" case
    args
    ...
    args
    file-1
    file-2
    ...
    file-n
    -execute


And this is how it looks for the "run once for each file in selection" case
    args
    ...
    args
    file-1
    -execute
    args
    ...
    args
    file-2
    -execute
    etc


Is that right?  If so, I'm a bit puzzled about how the "run once for each file in selection" case operates in practice.   If I select two files and use the CRS code I quoted in my last post, then the ECP output is
    2 image files updated

    0 image files updated
    2 image files unchanged


and from this it looks to me like both files are included in each execute statement.  I thought perhaps I should use {File}, but that just gives me
    No file specified

    No file specified

p.s.  I think I just worked it out.  I need to use {File.FullName}, don't I?  That seems to work.

I still have a question about whether there's any performance penalty for "run once for each file in selection"?  Is there still just one args file, and so not one call to ExifTool, and one for each file?

Mario

I don't no. I have no measured this. Best to try it yourself.
You can use the -v parameter in your preset to enable extra outputs from ExifTool to get more feedback.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

Ferdinand

I don't plan to run large numbers of files through the ECP very often.  I just did so for about 7,300 files.  I started in small batches and increased them.  I found that "run once" seemed to gag at a little over 1,000 files, stopped before it had got to the end, and even left some temporary files hanging around.  "run once for each file in selection" fared better, but got slow if you sent too many.  I found batches of around 500 files at a time seemed ok.  The -v option is a bit too verbose and filled up the ECP output window.  No, I didn't think to keep the log file.