Spaces Raw: CineForm Raw for Davinci Resolve

For the past couple of months I’ve been wanting to challenge my programming abilities since I’m close to transferring to uni. To do that I decided to try my hand at getting Davinci Resolve to read CineForm Raw (CFR from now on) files as if they were DNGs. I believe I’ve done a fairly sufficient job with this plugin. Here are the “specs” of the plugin.

  • OFX Win64 only (OS X in development)
  • 32 fps 2K 16:9 on i7-3770K Turbo O.C. 4.4 GHz
  • Uses combination of continuous functions and 16b tables of 32b floats to maintain speed and accuracy

Install by copying the bundle folder from the zip here:
C:\Program Files\Common Files\OFX\Plugins\
If you don’t have this folder, you can create it yourself.

I made sure to try to make the plugin as inclusive as possible when it came to options. So here is the complete list as of April 8, 2015.

Input Curve:
  • Protune
  • Optimize for 9 Stops
  • Optimize for 10 Stops
  • Optimize for 11 Stops

Okay, these are the curves that you would choose in the “Advanced Settings” window of GoPro Studio when converting your DNG files. You need to match these up so the plugin can correctly invert the log encoded CF file for color processing. I excluded 12 stop, 13 stop, and video because Resolve didn’t even read them as an image of those curves. So I just opted not to bother with them.

Color Gamut:
  • ACES
  • Bolex Wide Gamut RGB (not official, my proposed spec)
  • DCI P3
  • Rec. 2020
  • Rec. 709/sRGB
  • Sensor RGB/BMD Film

All of your favorite color gamuts! You can now control a CFR file’s output color gamut. I tried to get the most common ones in there.

Output Curve:
  • BMD Film
  • BMD Film 4K
  • Bolex Log (again, my proposed spec)
  • BT.1886
  • Cineon
  • Gamma
  • Scene Referred Linear
  • Sensor RGB
  • sRGB

Again, I tried to get the most common transfer functions. All of these are written according to their official documentation except for BMD Film (4K) which was added from the 12b LUTs included with Resolve. The gamma slider affects only the gamma option. The Sensor RGB transfer function gives the linear data as if you were looking at the uncorrected, linear DNG image. In other words, it doesn’t bring the linear image to scene referred values where middle gray is 0.18, it gives the data as it was recorded.

White Balance:

  • Custom
  • Tungsten (Incandescent) (2850K)
  • White Fluorescent (3450K)
  • Lite White Fluorescent (4150K)
  • Horizon Daylight (5000K)
  • Daylight (5500K)
  • Noon Daylight (6500K)
  • North Sky Daylight (7500K)

Okay, this part’s a little quirky and is likely to confuse some people. You get the normal options for white balance presets and two sliders for temperature and tint. The thing is the numbers on those sliders only update when in Custom mode. So, say you’re using Tungsten. The sliders will still show 6500 and 0 if you haven’t changed them. The sliders also don’t affect the image unless you’re in Custom mode. I know it’s weird, I just haven’t worked out the logic that works with the OFX API yet; I’ll get it fixed eventually.

Exposure Index:

  • 100
  • 200
  • 400
  • 800
  • 1600

I’m not exactly sure what options the Blackmagic cameras have, but these are the ones I thought to be most common. Use these to make the image exposure match what you were shooting at. So if you shot at 1600 ASA on the camera, put that here too, otherwise your exposure will be off. D16 users should set this to 200 if they shot at exposure without underexposing or ETTR.

Highlight Recovery: I attempted to write a highlight recovery algorithm. I think it does a decent job. Of course, it’s not perfect, but it does the job in real time.

Capture

Here we have the plugin in action on a CFR file. The plugin acts as the raw panel and then on nodes after you can do your grading. Here the second has the BMD Film to Rec 709 v2 LUT that comes with Resolve with a wipe to show the difference between the plugin’s BMD Film and the LUT.

And an example by Jon DeNicholas, shot on the D16.

You can download the plugin for free on my downloads page or if you’re feeling generous, you can buy the plugin through PayPal for whatever price you deem it to be worthy. Thank you for visiting my page and taking interest in my work, and I hope you find it useful.

Cheers!

Advertisements