Microsoft's announcement last Wednesday of forthcoming support for RAW-format files from digital cameras stirred up quite a bit of interest, but left a number of questions. To get a better picture of what the support will look like, and how the certification program for codecs for the Longhorn operating system will work, we interviewed Josh Weisberg today, Group Product Manager for Windows Digital Media at Microsoft.
The discussion lasted a good 45 minutes and covered a lot of ground, so for conciseness, we'll present most of what's below in a question/answer format. The bottom line appears to be that RAW files will now be "first class citizens" under the Windows OS, but it's equally clear that this particular move doesn't really address the issues of encrypted or otherwise obfuscated file formats that have become such a source of controversy in the photo community recently.
The Microsoft announcement was in two parts: First, that there will be a "codec" interface for translating image files built into Microsoft's forthcoming "Longhorn" version of the Windows operating system (currently slated for release in "second half, 2006"). Second, there will be a "powertoy" accessory application released within the next two weeks that will support some interaction with RAW files from Canon and Nikon under the current release of Windows XP. Microsoft's Digital Image Suite will also support Canon and Nikon RAW files in a near-future release.
Now on to our chat with Josh Weisberg:
"Powertoy" Questions
Q: What functions will the "powertoy" encompass?
A: A few things. It adds thumbnails in Windows Explorer for Nikon and Canon RAW files, and if you hover over one of those files, it will display more detailed EXIF data. You can double-click on a RAW file and it will bring up a viewer that looks just like the image and fax viewer in Windows. From there, or from the Photo Printing Wizard, you can print the image if you want. I refer to it as an application for "triage," when you want to quickly sort through a collection of just-shot RAW images, delete bad ones, make prints from some on your desktop printer.
Q: When will it be available, what will it cost, and how will people get it?
A: It should be available in about two weeks. Like other "powertoys" for Windows, users can download it for free from the Microsoft website, but there is no technical support offered for it.
Q: How is the RAW-to-RGB conversion performed inside the powertoy?
A: It uses the Canon and Nikon binary SDK code.
Q: Will there be any provision for outputting the decoded RGB data to other applications?
A: No, that ability of generic applications to open RAW-format files will have to wait for Longhorn.
Longhorn Questions:
Q: Can you explain the overall plan for RAW support in Longhorn in a bit more detail?
A: Sure. There are really two components to what we're doing in Longhorn. One is that Longhorn will have an architecture for image codecs, providing extensibility for the set of image file formats that Longhorn supports natively. Codecs for standard image formats will be provided by Microsoft, just as we do now in XP, for file formats like TIFF, JPEG, etc. RAW formats are tough for someone like Microsoft to deal with though, because there are so many of them, they're frequently changing as new camera models come out, and they're all a little different. Our plan is to handle arbitrary image file formats through codecs, provided either by the encoders of the data (manufacturers like Canon, Fujifilm, and Nikon, and Adobe with DNG), or by third-party developers. When we started designing Longhorn's imaging architecture, we wanted to get the requirements for image handling set out at the beginning, and felt that it would be smart to get the manufacturers involved from the outset. This provided the benefit of not only having a good customer solution, but also helped the companies feel comfortable about supporting Longhorn with their technology.
There are two basic ways these codecs can be used. First, they'll allow supported RAW files to behave like any other image format in Windows. That is, you'll be able to double-click on them and pick what application you want to have open them, view their metadata, right-click to get image-specific contextual functions, etc. Most importantly, you can work with RAW files in applications that support images, without the application having to know anything about how RAW files work. For instance, you could open and place RAW files inside PowerPoint or Word documents. This would also be good for sharing scenarios, although I'm not sure how prevalent it will be with RAW users to share photos with friends or family.
The second level of using the codecs will be via the RAW API (Application Programming Interface) in Longhorn, which will expose some RAW conversion settings to the users, such as white balance, exposure, etc. Application developers will be able to access "hooks" for these settings, letting the user control how the RAW data is interpreted on the way into their end application.
Q: Barring the use of user controls during the import, what settings will be used for the converted photos?
A: The as-shot camera settings.
Q: Will Microsoft require that codec developers implement a certain minimum set of user controls in their APIs?
A: No, that's up to each developer, we won't force a company to use all the settings. There will be a total of about 8 functions, but not all of them will necessarily be implemented by all companies. We did feel in our discussions that there was a consensus to support these functions.
Q: How will the RGB data be presented to the applications? 8- or 16-bit? sRGB, Adobe RGB, or another color space?
A: The option for 8 or 16-bit data will be up to the codec developer, whether 16-bit data is supported or not. The RAW architecture supports a full 16-bit pipeline though. As to color space, we're not ready to talk about color in Longhorn yet. (It's a great question, and I wish I could, as there's a lot to talk about there, but that will have to be a discussion for another day.)
Q: What's the deal with the "certification" process for codecs? What governs whether a codec gets certified or not?
A: There are a couple of reasons for doing this. First and foremost are security reasons -- We don't want someone writing a codec that gobbles up your images or opens a security hole in the system. Beyond that, we want to do basic functionality checks, to make sure that files really will open in response to a double-click, that sort of thing.
Q: So there aren't any requirements having to do with perceived quality of the conversion process, whether the reds are red enough, etc?
A: The quality of the RAW conversion process is subjective -- so it could be difficult for us to certify a codec based on quality. Our goal is to make sure that Longhorn customers have a good experience and that the conversion functions according to the specifications.
Q: What about the issue of decrypting data that's been encrypted by the manufacturers? Would Microsoft be OK with someone doing that?
A: We're not getting involved in the question of who owns the bits, who has the rights to decrypt the data or not. We'll certify solely on the basis of functionality and security. However, the benefit of the RAW architecture in Longhorn is that any application can convert a RAW file without having to fully understand it. The codec would provide the conversion, and in this example, decryption, for the application.
Q: Will there be any provision for application programmers to access the original RAW data, before it's been de-mosaiced and converted into RGB pixels?
A: No, the only output format will be RGB.
I want to be clear that we're not going after professional-level RAW conversion. We want to make sure that there are still opportunities for Adobe, Phase One, and others to have a business opportunity to develop and market their pro-level conversion software. They'll continue to be able to provide much broader abilities to tweak the image data, workflow solutions, etc.
Q: So this is really a "business class" conversion service then? - A convenient way to get files into applications like PowerPoint or an email program, but not really intended as a means for professional photographers to manipulate their images?
A: Well, yes and no. It's really a bit more than that, something in the middle somewhere. There is support for 16 bit data, so you can certainly get at a lot more image data than you can with a JPEG. There's also the whole matter of browsing and organizing images. You may want to sort through your RAW images without having to perform a conversion, but today you have to convert them before you can look at them. (The biggest winners from an application developer standpoint will likely be the asset manager publishers. This will mean they won't have to be constantly adding support for new RAW formats as they're developed.)
So there you have it: Not all the answers, but at least answers to all the questions we thought to ask. ;-)
This does appear to be good news for the growing legions of photographers who routinely shoot in RAW mode, or at least those who'll also be using Longhorn.
What's equally clear though, is that this really has no bearing whatever on the firestorm of debate triggered by Nikon's recent decision to encrypt the as-shot white balance data in files written by their latest d-SLRs. The announced Longhorn codec architecture will basically treat the RAW codecs as black boxes, so it in no way addresses the concerns people have had about proprietary/encrypted RAW formats. Since the codecs are binary-coded black boxes, they do nothing to insure longer-term accessibility of the image data contained in RAW files, and since they don't make the original matrix of pixel data available, they don't do anything to help independent developers like Adobe, Phase One, Bibble Labs, etc.
Not to criticize Microsoft's move here in the slightest - This RAW codec strategy promises to dramatically increase the usefulness of RAW-formatted image files in a broad range of consumer and business applications, a feat they're to be applauded for. Their stated neutral stance on "who owns the bits" in proprietary formats is also good news for third-party developers. -- It's just that I'm sure many of us in the photo community were hoping for a broader solution to the whole proprietary file format issue.
Thanks to Josh Weisberg of Microsoft for taking the time to speak with us. See below for a little additional information on supported cameras, and some screenshots from the Thumbnailer/Viewer application.
The forthcoming initial release of the RAW Image Thumbnailer and Viewer will support the following:
The software supports the following image types:
- Canon EOS RAW images (.crw, .cr2, .tif)
- Nikon Electronic Format images (.nef)
- Bitmap images (.bmp)
- JPEG images (.jpg, .jpe, .jpeg)
- Windows Metafile images (.wmf)
- Tagged Image File Format images (.tif, .tiff)
- Graphics Interchange Format images (.gif)
- Portable Network Graphics images (.png)
Supported camera models include the following:
- Canon EOS 1D
- Canon EOS 1Ds
- Canon EOS 1D Mark II
- Canon EOS 1Ds Mark II
- Canon EOS D30
- Canon EOS D60
- Canon EOS 10D
- Canon EOS 20D
- Canon EOS Digital Rebel (300D)
- Canon EOS Digital Rebel XT
- Canon PowerShot G2
- Canon PowerShot G3
- Canon PowerShot G5
- Canon PowerShot G6
- Canon PowerShot Pro1
- Canon PowerShot s30
- Canon PowerShot s50
- Canon PowerShot s70
- Nikon D1
- Nikon D1x
- Nikon D2H
- Nikon D2x
- Nikon D70
- Nikon D100
- Nikon Coolpix 8800
- Nikon Coolpix 5700
Note that other models of cameras may work, but have not been explicitly tested by Microsoft.
For those interested, here are some screenshots (unfortunately rather low resolution), provided by Microsoft, showing some of the capabilities and user interface of the forthcoming Image Thumbnailer and Viewer for RAW images under Windows XP.
The RAW Image Viewer will look and work pretty much like the Windows Picture and Fax Viewer
Thumbnails for RAW images will appear in Windows Explorer in their proper orientation.
The Properties button in the RAW Image Viewer will display shot settings.
You'll be able to add custom columns to the Detail View in Windows Explorer.
An example showing custom column properties for RAW files in Windows Explorer...
The Photo Printing Wizard will support direct printing (using as-shot settings) from RAW files.
You'll be able to assign editor programs by file type, and decide which types you want to have open in the RAW viewer by default.
That's all for now, stay tuned in about two weeks for the release of the RAW Thumbnailer and Image Viewer, with documentation!