On Mon, 14 Jan 2008, James Abley wrote:

Maybe metadata is a bit misleading. I view it as metadata, but it's
really just the attributes of the media entity. For images, this may
be height, width, colour depth, etc. For video, this could be audio
bitrate, video bitrate, frames per second, duration, etc. We could try
extracting that ourselves, or we can rely on the author of the media
entity knowing what it is and setting the corresponding attributes in
the feed.


Support for multiple Atom enclosure links is fairly poor in current feed
readers, but there is at least some support. Support for Yahoo media:content
elements in Atom is non-existent (AFAIK). Your best bet for adding metadata
to multiple enclosure elements would be as sub-elements of a standard
atom:link element. That still requires a specialist client to view the
metadata, but at least the media itself might be accessible to a general
purpose reader.

That's what my current draft looks like, so colour me happy. There are
typically multiple versions of the same media entity, e.g the lost dog
story video;  provided in different formats to ensure good coverage of
target client devices. Alternatively, there may only be a single
version, and we produce lots of different versions as part of the
import process.


This is the same use case I am facing (digital
image/video/audio/document library to be used in higher ed.). And
figuring out metadata for multiple media entities is the last piece of
the puzzle for using Atom.  I had gone with a custom "microformat" xhtml
to be included in the content for the media but encoding metadata using
classes was getting kludgy.  So...does this seem like a reasonable
approach:

<link rel="http://example.com/thumbnail"; href="http://example.com/media/123_100.jpg"; type="image/jpeg"
length="3452">
  <x:height>120</x:height>
  <x:width>120</x:width>
</link>

<link rel="enclosure" href="http/example.com/media/123.mov"
type="video/quicktime" length="3434343">
  <x:duration>123</x:duration>
  <x:bitrate>128</x:bitrate>
  <x:checksum>e18d8047a12bac8274e018dc70cb7d39</x:checksum>
</link>

<link rel="enclosure" href="http/example.com/media/123.mp3"
type="audio/mpeg" length="34343">
  <x:duration>123</x:duration>
  <x:bitrate>128</x:bitrate>
  <x:channel_mode>stereo<x:channel_mode>
  <x:checksum>2e6e63a97c1cbcd4741489849f7e4ab8</x:checksum>
</link>

This, too, is for a custom application (I am the consumer and publisher) but potential for reuse and the desire to create a sane design are highly desired. (I, too, need to attend a James Snell session on creating atom extensions!).

-peter keane

daseproject.org

Reply via email to