[cc-metadata] Standardizing JPEG licensing

Nathan R. Yergler nathan at yergler.net
Mon Aug 1 11:23:07 EDT 2005


Creative Commons has long had standard methods for embedding license 
information in MP3 and OGG audio files.  As we begin to work on a 
"libcc" or similar library, we probably need to discuss best practices 
for embedding in other common formats.  The one that matters to me today 
is JPEG, so I wanted to outline a couple of options and get feedback or 
consensus. 

It seems there are two obvious possiblities for embedding CC license 
information in JPEG files.  First, EXIF contains a "copyright" tag which 
is intended to be populated with a statement such as "Copyright, John 
Smith, 20xx. All rights
reserved."  Following the example of embedding a license statement in 
the TCOP field of ID3v2 for MP3 files, we could embed a standard 
statement, such as "© 1995 Example Photographer. Licensed to the public 
under http://creativcommons.org/licenses/by/2.0/ verify at 
http://example.com/licenseinfo".  Work metadata and verification 
information would then be stored in an external file, in this case 
http://example.com/licenseinfo.  This approach has the advantages that 
EXIF manipulation is well understood and a common operation of image 
editting software and sites.  Additionally, other tools may be able to 
display CC license metadata (even if they do not validate or populate) 
simply because they display all available EXIF data.  However, the 
disadvantage is that it requires metadata to be stored in an external, 
secondary file.

The other semi-obvious choice that comes to mind is using Adobe XMP 
metadata (http://www.adobe.com/products/xmp/).  CC already provides a 
specification and instructions for using XMP metadata in Adobe 
applications such as Photoshop 
(http://creativecommons.org/technology/xmp-help) and Adobe provides an 
SDK (http://partners.adobe.com/public/developer/xmp/sdk/index.html) for 
embedding XMP in several file formats.  Using XMP has two primary 
advantages.  First, it allows us to bundle metadata with the file so 
users have a single package to worry about.  Second, it allows some 
standardization across file formats of available metadata.  A third, 
less clear advantage is that it may be possible to reuse some code 
across file formats for interpretting the CC metadata, as I believe the 
SDK abstracts some of the implementation details.  The disadvantages for 
this approach are that it requires learning or interpretting the Adobe 
SDK documentation, and it may be more difficult to convince third-party 
developers to implement a system that is seen as more difficult to 
implement.

So what I'd like is feedback and ideas; does anyone have experience with 
the XMP SDK?  Anyone have strong feelings (and arguments to back them 
up) either way?  Personally I'm sort of on the fence at this point, and 
can see advantages to both approaches.  There's actually nothing 
preventing a user from implementing both, but it seems like it would be 
helpful to have a "standard" way of doing this to promote application 
interoperability.

Thanks,

Nathan R. Yergler
Software Engineer
Creative Commons



More information about the cc-metadata mailing list