[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