RAW Codec Requirements for Windows 7

The following codec features are required at a minimum:

All functionality that is required for Windows Vista shell and Photo Gallery support: thumbnail, preview, and (persisted) rotation. RAW processing should default to appropriate as-shot settings.

Support for core metadata (both read and write), Non-EXIF metadata, as well as EXIF metadata, should be persisted inside RAW file formats without use of sidecar files.

Support for the IWICDevelopRaw interface. For Windows 7, Windows Imaging Component (WIC)WIC requires that all parameter interfaces exposed by IWICDevelopRaw be implemented.

Orientation state support:

  • 90 degree-step Image rotations should be applied by using the IWICDevelopRaw::SetRotation method. Applications and Windows use this method to rotate the images (and cached thumbnails and previews).
  • Application of rotation by using this API should also be persisted by the codec (see earlier in this paper).
  • Applications can use the rotation capabilities of the IWICBitmapSourceTransform API, but the codec will not serialize any rotation settings on this API, so rotations done using IWICBitmapSourceTransform will not be persisted.

High-speed thumbnail and preview extraction support. If the preview maximum pixel dimension (width or height) is less than 1024 pixels in size, Windows Vista will request a render for screen preview:

High dynamic range (HDR) pixel formats.

XML Paper Specification (XPS) printing.

Conceptual

Windows Imaging Component Overview

WIC Guidelines for Camera RAW Image Formats

How to Write a WIC-Enabled CODEC