<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.0.12-alpha" -->
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>Jeffrey Friedl's Blog</title>
	<link>http://regex.info/blog</link>
	<description>Not a photo blog, but sometimes I play one on TV</description>
	<pubDate>Thu, 04 Dec 2008 14:35:33 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.0.12-alpha</generator>
	<language>en</language>
			<item>
		<title>Jeffrey&#8217;s &#8220;Metadata Wrangler&#8221; Lightroom Plugin</title>
		<link>http://regex.info/blog/lightroom-goodies/metadata-wrangler/</link>
		<comments>http://regex.info/blog/lightroom-goodies/metadata-wrangler/#comments</comments>
		<pubDate>Sat, 26 Jul 2008 17:10:00 +0000</pubDate>
		<dc:creator>Jeffrey Friedl</dc:creator>
		
		<category>General</category>

		<guid isPermaLink="false">http://regex.info/blog/lightroom-goodies/metadata-wrangler/</guid>
		<description><![CDATA[



Quick Links
     &#183; Latest Download:
&#160;&#160;&#160;&#160;&#160;metadatawrangler-20081122.30.zip
&#183; Version History
&#183; Installation instructions
&#183; More Lightroom Goodies
&#183; My Photo-Tech Posts
&#183; My Blog



<br style='display:block;margin:5px'/>My &#8220;Metadata Wrangler&#8221; plugin filter for Lightroom 2 or
later allows you to strip selected metadata components from images as they
are exported. You can use it, for example, to remove the embedded thumbnail
and any Lightroom &#8220;develop&#8221; metadata, while retaining other metadata, such
as the exposure settings, lens information, copyright, etc.

<br style='display:block;margin:5px'/>Links for download and install instructions are at right; continue
reading below for a description of the plugin's features.

<br style='display:block;margin:5px'/>(Note: Please see the known issues before reporting bugs.)

 
<br style='display:block;margin:5px'/>Overview

<br style='display:block;margin:5px'/>Here's a [...]]]></description>
			<content:encoded><![CDATA[


<div style='float:right; position:relative; border: dotted 1px #888; margin: 0 auto; margin-left:2em; padding:20px; padding-top:5px; background-color: #000'>
<center style='font-weight:bold; font-size:120%'>Quick Links</center>
     &middot; <b>Latest Download</b>:
<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class='quiet' href='http://regex.info/LightroomPlugins2/releases/metadatawrangler-20081122.30.zip'><span style='padding:1px 3px; border:solid 1px orange; color:#888'>metadatawrangler-<span style='color:orange; font-weight:bold'>20081122.30</span>.zip</span></a>
<br/>&middot; <a class='quiet' href='#history'>Version History</a>
<br/>&middot; <a class='quiet' href='http://regex.info/blog/lightroom-goodies/plugin-installation/'>Installation instructions</a>
<br/>&middot; <a class='quiet' href='http://regex.info/blog/lightroom-goodies/' style='color:#F55'>More Lightroom Goodies</a>
<br/>&middot; <a class='quiet' href='http://regex.info/blog/photo-tech/'>My Photo-Tech Posts</a>
<br/>&middot; <a class='quiet' href='http://regex.info/blog'>My Blog</a>
</div>


<p>My &#8220;Metadata Wrangler&#8221; plugin filter for Lightroom 2 or
later allows you to strip selected metadata components from images as they
are exported. You can use it, for example, to remove the embedded thumbnail
and any Lightroom &#8220;develop&#8221; metadata, while retaining other metadata, such
as the exposure settings, lens information, copyright, etc.</p>

<p>Links for download and install instructions are at right; continue
reading below for a description of the plugin's features.</p>

<p>(Note: Please see the <a href='http://regex.info/blog/lightroom-goodies/issues/'>known issues</a> before reporting bugs.)</p>

<style type="text/css">
  #post882 table { border: solid gray 1px }
  #post882 td:first-child { font-weight: bold; padding-right:1em }
  #post882 td p:first-child { margin-top: 0 }
  #post882 .h { font-weight:bold; font-size:120% }
</style>
<p class='h'>Overview</p>

<p>Here's a screenshot showing the options and features of the Metadata
Wrangler as it appears in the Export Dialog, as of its initial public
release:</p>

<div style='clear:all' class='ic tight'><img src="http://regex.info/i/lr/MetadataWrangler.png" width="588" height="1674"
alt="Screenshot of Jeffrey's
Metadata Wrangler plugin for Lightroom 2.0, allowing the removal of XMP,
EXIF, etc. metadata from an image exported from Lightroom"
class="raw"
title="Screenshot of Jeffrey's
Metadata Wrangler plugin for Lightroom 2.0, allowing the removal of XMP,
EXIF, etc. metadata from an image exported from Lightroom"/></div>

<p>What metadata you choose to strip &ndash; and to leave intact &ndash;
can vary greatly depending on your intended use. For example, it makes
sense to strip at least the embedded thumbnail from small exports that are
themselves intended to be used as thumbnails. In such a case, it may well
make sense to strip everything but copyright information, to keep the file
size small.</p>

<p>On the other hand, it may well make sense to preserve most metadata
on images intended for upload to a photo-sharing site, yet remove the
embedded thumbnail that does little but increase the file size (and hence
the file-upload time).</p>

<p>In any case, only the exported copy of the image is affected; both the
original image and the Lightroom library are never changed by this
plugin.</p>

<p class='h'>It's a &#8220;Filter&#8221;</p>

<p>I call the Metadata Wrangler an &#8220;<b>export filter</b>&#8221;, but in the official
Lightroom vernacular, it's a &#8220;<b>post-process action</b>&#8221;. The point is that
unlike a full export plugin (such as my &#8220;Export to Flickr&#8221; plugin), this
filter (post-process action) can be used with <i>any</i> export from
Lightroom. It can be used in conjunction with the standard &#8220;Files on Disk&#8221;
export, in conjunction with one of my other plugins (e.g. &#8220;Export to
Zenfolio&#8221;, &#8220;Export to PicasaWeb&#8221;), or any other third-party export
plugin.</p>

<p class='h'>Metadata Can Be a Bit Tricky</p>

<p>I don't know that there's a good reason for it, but it's turned out that
image-file metadata formats have grown into somewhat of a mess. Luckily,
Phil Harvey has created the most excellent <a
href='http://www.sno.phy.queensu.ca/~phil/exiftool/'>exiftool library</a>
that makes this plugin's work much easier. It's the same metadata-handling
library used for the back end of <a
href='http://regex.info/blog/other-writings/online-exif-image-data-viewer/'>my
online Exif viewer</a>. If you find this Metadata Wrangler plugin useful,
please consider making a <a
href='http://www.sno.phy.queensu.ca/~phil/exiftool/#donate'>donation to the
Exiftool Project</a> in thanks.</p>

<p>Nevertheless, some of the &#8220;metadata mess&#8221; remains exposed to you, the
user, as evidenced by the mishmash of XMP blocks. Here's part of the
Metadata Wrangler in Lightroom's export dialog dealing with XMP blocks....</p>

<div class='ic tight'><img src="http://regex.info/i/lr/MetadataWranglerXMP.png" width="588" height="295"
class="raw"/></div>

<p>You can have all XMP data preserved or stripped by clicking on the
&#8220;preserve&#8221; or &#8220;remove&#8221; next to the &#8220;XMP Blocks&#8221; label at the top, but if
you want to be selective, you may have to do some research to see in which
block or blocks the data you're interested in lies. It's a bit cryptic for
the non-engineer, but the <a
href='http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/XMP.html'>XMP-block
info at the exiftool site</a> lists exactly what fields are in each block.
(The &#8220;XMP Info&#8221; button in the dialog links to that page as well.)</p>

<p>Two of the XMP blocks are fairly straightforward. The <b>XMP &#8220;crs&#8221;</b>
block contains all the information about Lightroom develop adjustments
(crop, exposure, localized corrections, etc.). You'll want to strip this
block if you want to hide &ndash; or just don't feel the need to include
with the image &ndash; all the develop changes you've made to an image.</p>

<p>The <b>XMP &#8220;exif&#8221;</b> block contains a repeat of most of the Exif data
represented individually lower in the dialog. I'm not sure that there's
100% coverage, but I generally strip it unless I intend the exported image
to be for some kind of archive.</p>

<p class='h'>Presets</p>

<p>The Metadata Wrangler supports its own preset mechanism. The dropdown
near the top of the Metadata Wrangler export-dialog section allows you to
create and recall presets of exclude/preserve decisions:</p>

<div class='ic tight'><img src="http://regex.info/i/lr/MetadataWranglerPresets.png" width="411" height="253"
class="raw"/></div>

<p>&#8220;Preserve Metadata&#8221; and &#8220;Remove Metadata&#8221; are standard presets that
adjust the settings to save/remove all metadata. You can create a new
preset by making some change to the dialog settings, then choose &#8220;save
current settings as a preset&#8221;.</p>

<p>The current settings for the Metadata Wrangler are also part of any
Lightroom Export Preset that you create while the Metadata Wrangler is
installed and enabled. Note that the individual settings are saved to the
Lightroom export preset, rather than any Metadata Wrangler preset name that
might be in effect. This means that if you create a Lightroom Export Preset
and then later change the meaning of a Metadata Wrangler preset, that
change is not reflected back into the Lightroom Export Preset. (This
paragraph is a bit confusing, sorry.)</p>

<p class='h'>Metadata Not Explicitly Listed...</p>

<p>The bottom of the dialog section includes a catch-all item that governs
how the whole plugin approaches its work:</p>

<div class='ic tight'><img src="http://regex.info/i/lr/MetadataWranglerCatchall.png" width="588" height="91"
class="raw"/></div>

<p>When &#8220;Remove&#8221; is selected here, all metadata is removed, and then only
items explicitly listed as &#8220;Preserve&#8221; elsewhere in the dialog are added
back. Conversely, when &#8220;Preserve&#8221; is selected, the items explicitly listed
as &#8220;Remove&#8221; are manually removed from the exported image.</p>

<p>I believe that the end result is always the same &ndash; that all
metadata that could be in the image is listed earlier in the dialog &ndash;
but I've included this option as a &#8220;just in case&#8221;. When I'm exporting small
images for use as thumbnails on my site, for example, I strip everything
except what I explicitly want to keep: the ICC Color profile, and the
copyright/artist information.</p>


<p class='h'><a name='history' style='font-weight:bold'>Version History</a></p>
<table id='history' style='padding:5px'><tr valign='baseline'><td><a name='30'>20081122.30</a></td><td>No problems from the upheval recently, so pushing back the expiration a bit.

</td></tr><tr valign='baseline'><td><a name='29'>20081121.29</a></td><td>Try#3 at this fix. Perhaps I shouldn't be programming when I have a cold....

</td></tr><tr valign='baseline'><td><a name='28'>20081120.28</a></td><td>Grrr, build problem held back the fix in <b>.27</b>. This should actually have the fix this time.

</td></tr><tr valign='baseline'><td><a name='27'>20081120.27</a></td><td>Fixes the <b>Undefined subroutine &amp;Digest::MD5::md5</b> error that some people are seeing.

</td></tr><tr valign='baseline'><td><a name='26'>20081119.26</a></td><td>Added some more logging to help debug the <b>Undefined subroutine &amp;Digest::MD5::md5</b> error that some people are seeing.

</td></tr><tr valign='baseline'><td><a name='25'>20081117.25</a></td><td>No new functionality in this version, but a huge upheaval in the underlying code to repair an unfortunate design choice I made early on
               in the development that had limiting consequences I'd not foreseen. There are likely bugs introduced in this version, and as such, it
               has a short expiration date to encourage updates as those bugs are reported and fixed. If you do run into an error, please send (via <a
               href='mailto:jfriedl@yahoo.com'>email</a>) the log referenced in the upper-right of the Plugin Manager. Thanks.

</td></tr><tr valign='baseline'><td><a name='24'>20081113.24</a></td><td>Added "enabled" to the status line when it's enabled, just to be clear.
               Attempted to address <a href='http://regex.info/blog/lightroom-goodies/flickr/#comment-25693'>a problem</a> that I didn't think could happen, but apparently has.

</td></tr><tr valign='baseline'><td><a name='23'>20081031.23</a></td><td>Fixed a but wherein keywords were getting flattened in some situations.

</td></tr><tr valign='baseline'><td><a name='22'>20081030.22</a></td><td>Added a bit of logging to try to track down a problem.

</td></tr><tr valign='baseline'><td><a name='21'>20081004.21</a></td><td>Fixed a situation that might have caused trouble when running two exports in tandem.

</td></tr><tr valign='baseline'><td><a name='20'>20080923.20</a></td><td>Sigh, just realized that the "check for new version" stuff <i>did</i> break in 2.1. Totally my fault, sorry. Fixed.

</td></tr><tr valign='baseline'><td><a name='19'>20080923.19</a></td><td>Arrrgh, my plugin build system has been broken since <a href='http://regex.info/blog/2008-09-09/929'>returning to Kyoto</a> two weeks ago, thereby causing
               new installs of this plugin to not work. Sorry! Should be fixed now.

</td></tr><tr valign='baseline'><td><a name='18'>20080916.18</a></td><td><i>Finally</i> have the upgrade button working on both Win and Mac. Since I <a href='http://regex.info/blog/2008-09-09/929'>returned home</a> last week, I now have access to both kinds of machine for the first time since LR2 was released. I can sum up the 5 hours I spent wrestling with the unzip code in three word: <b>I hate Windows</b>. Microsoft owes me five hours of my life back.   Note that you may have to install this one by hand in order to get the newly working upgrade button... it's the <i>next</i> upgrade that should be easy-as-click.

</td></tr><tr valign='baseline'><td><a name='17'>20080831.17</a></td><td>Handle a race condition in the upgrade logic that sometimes results in a superfluous "You have version XYZ, but version XYZ is now available" message

</td></tr><tr valign='baseline'><td><a name='16'>20080831.16</a></td><td>Made the switch among presets a bit more efficient, and perhaps fixed a bug related to the preset name not updating in response to changes made in the various
               selections when switching among Lightroom export presets. (I say perhaps because I could no longer replicate the bug I thought I was seeing, but I don't
               think I changed anything that would have fixed it, so maybe there really was no bug in the first place? I dunno. In any case, it's fixed. <img src='http://regex.info/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  )

</td></tr><tr valign='baseline'><td><a name='15'>20080828.15</a></td><td>Minor tweaks

</td></tr><tr valign='baseline'><td><a name='14'>20080828.14</a></td><td>A few more tweaks to report a failed upgrade attempt a bit more clearly

</td></tr><tr valign='baseline'><td><a name='13'>20080828.13</a></td><td>When upgrading, ignore a status of &#8220;50&#8221; (which means &#8220;out of
               disk space&#8221;) from the unzip the plugin performs. It seems Windows often
               reports this status even when there's plenty of disk space left, so until I
               can understand it better, I'll just ignore that code.

</td></tr><tr valign='baseline'><td><a name='12'>20080817.12</a></td><td>Lots of little tweaks as I cleaned things up. Added a bunch of stuff to the Plugin Manager, including
               a &#8220;What's New&#8221; button that shows up next to the &#8220;Upgrade Now&#8221; button when a new version is available.

</td></tr><tr valign='baseline'><td><a name='11'>20080814.11</a></td><td>Fixed infinite cycle of 'assert' messages one might get in odd situations

</td></tr><tr valign='baseline'><td><a name='10'>20080811.10</a></td><td>Moved and renamed the debugging logs to a temporary folder, and added log Show/Delete buttons to the plugin's custom section of the Plugin Manager.

</td></tr><tr valign='baseline'><td><a name='9'>20080808.9</a></td><td>Fixed the "LrShell" problem while using the one-click plugin upgrade.

</td></tr><tr valign='baseline'><td><a name='8'>20080807.8</a></td><td>Fixed the "strict.pm" error that Windows users were seeing.

</td></tr><tr valign='baseline'><td><a name='7'>20080807.7</a></td><td>Updated the plugin links to refer to the <a href='http://regex.info/blog/lightroom-goodies/metadata-wrangler/'>proper page</a>, rather than <a href='http://regex.info/blog/'>my blog</a>.

</td></tr><tr valign='baseline'><td><a name='6'>20080806.6</a></td><td>An attempt to fix the "Access to undefined global: quote" bug.... we'll see.

</td></tr><tr valign='baseline'><td><a name='5'>20080731.5</a></td><td>Fruits of the debugging... should now work for more people

</td></tr><tr valign='baseline'><td><a name='4'>20080730.4</a></td><td>More debugging stuff...

</td></tr><tr valign='baseline'><td><a name='3'>20080730.3</a></td><td>Added more debugging to the log file ("lr-plugin.log" in the Documents/MyDocuments folder) to help debug when things don't work.

</td></tr><tr valign='baseline'><td><a name='2'>20080729.2</a></td><td>Cosmetic change: swapped the section-heading "preserve" / "remove" buttons to match the order of the columns.

</td></tr><tr valign='baseline'><td><a name='1'>20080729.1</a></td><td>Initial public release

</td></tr></table>
<style>
#history td { padding-bottom: 10px }
</style>



]]></content:encoded>
			<wfw:commentRss>http://regex.info/blog/lightroom-goodies/metadata-wrangler/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
