iOS27, CIRAWFilter RAW9 broken/missing in latest dev beta

In the WWDC talk: https://developer.apple.com/videos/play/wwdc2026/305/?time=350 "Enhance RAW image processing with Core Image" there is a section on the new RAW9 processing APIs and how to enable them.

First off, the sample code compiles on iOS18 but causes a runtime exception because the .version9 symbol cannot be found, looks like the header definition is missing a version check for this value, so I'm not sure how to use this code if you need to support iOS18.

Also on later dev betas (I tried the latest beta7) now trying to check if version9 is available the value is no longer present in the supported list:

guard filter.supportedDecoderVersions.contains(.version9) else { ...

There is another value .version9DNG that resolves to true but if I try to use that decoder the colors on the RAW image are wrong and the image becomes corrupted.

How to use the RAW9 decoder in the latest dev betas, what should the final code before production because the WWDC sample now seems out of date and was always wrong wrt. iOS18.

Answered by DTS Engineer in 902930022

Hello markdaws,

While it's possible to compile that code on earlier iOS versions, the minimum system requirement to actually use RAW 9 is iOS 27.

Hoping this helps,

Richard Yeh  Developer Technical Support

Hello markdaws,

While it's possible to compile that code on earlier iOS versions, the minimum system requirement to actually use RAW 9 is iOS 27.

Hoping this helps,

Richard Yeh  Developer Technical Support

Hello markdaws,

This feature is intended for use on iOS 27. So you could set an #available compiler control statement to require a minimum operating system version, and use an earlier decoder version for users on iOS 26 and earlier.

DNG refers to the Digital Negative archival format. iPhone cameras shoot DNG photos natively. Please see Capturing photos in RAW and Apple ProRAW formats, as well as WWDC21 session Capture and process ProRAW images for additional information.

What device are you developing on? There is a known issue leading to incorrect color tinting on iPhone 16 Pro (FB24419261) when using CIRAWFilter with .version9DNG on a custom working color space, which might be the source of your issue. In which case I'd recommend you keep testing as new beta releases become available. You could also file a bug report via Feedback Assistant to track the status of this issue.

Hoping this helps,

Richard Yeh  Developer Technical Support

#available does not work here as referencing the RAW 9 symbols in any fashion leads to a DYLD crash on launch on iOS 18. Instead, use CIRAWDecoderVersion(rawValue: "9") or CIRAWDecoderVersion(rawValue: "9.dng") for now.

iOS27, CIRAWFilter RAW9 broken/missing in latest dev beta
 
 
Q