Extensible Device Metadata (XDM)

The eXtensible Device Metadata (XDM) specification is a standard for storing device-related metadata in common image containers such as JPEG and PNG, while maintaining compatibility with existing image viewers. The data storage format is based on the Adobe XMP standard. XDM is being developed as an open file format and is maintained on this site by a working group that includes engineers from Google and Intel.

The metadata that can be stored includes depth map, point cloud, mesh, connectivity, device and camera pose, lens perspective model, image reliability data, and vendor-related information about the device and sensors. The XDM specification includes support for multiple cameras, each with its own relative physical orientation. Each camera data structure can optionally contain an image, an audio track, and depth data if they can be provided by the device platform.

As of version 1.01, XDM supports a variety of use cases including depth photography, VR, and 360 photography.

Example: XDM can store the depth map (right) as metadata with the color image (left).

Example: XDM can enhance a standard image (left) with a depth map (right) as metadata.

Backwards compatibility

The eXtensible Device Metadata specification is a significant expansion of the original Depthmap Metadata specification published in 2014. It still supports the original use case of a single-image container with associated depth metadata, but expands that original specification to support more types of metadata and more use cases.

Applications that supported the Depthmap Metadata spec will require modification to support XDM. The items from the Depthmap Metadata standard are handled differently in XDM such as Units, Confidence, Manufacturer, Model, ImageWidth, and ImageHeight.

XDM supports image containers that include JPEG, PNG, TIFF, and GIF. In this documentation, JPEG is used as the basic model, but the concepts generally apply to other image file types supported by XMP.