A camera raw file — .dng, .cr2, .cr3,
.nef, .arw, and others — is not a picture yet. It is the sensor's own
measurements, saved before the camera (or any software) decided what they should look
like. Paintapp opens raw files by running that decision itself: demosaicing the sensor
mosaic into an image, then applying the same white-balance, camera-calibration and tone
pipeline that Adobe Camera Raw and Lightroom use, so the result looks like a photograph
rather than a strange colored grid — and so the same sliders and camera profiles behave
the way they do in those tools.
A JPEG or TIFF straight off a camera has already been through a full render: demosaiced, white-balanced, color-corrected, tone-mapped, sharpened, and compressed — a process the camera's own processor completed in a fraction of a second, discarding everything it didn't keep. A raw file skips all of that. Each pixel position holds one measurement — red, green, or blue, never all three — arranged in a checkerboard-like mosaic called a Bayer pattern (or, on some Fuji sensors, an X-Trans pattern), plus enough metadata to reconstruct what the camera saw: the black level, the sensor's saturation point, and the color of the light in the scene.
Nothing is thrown away and nothing is decided for you. That's the appeal of raw — you (or your software) choose the white balance, the tone curve, and the color rendering, instead of living with the camera's one-shot guess — but it also means a raw file needs a real pipeline before it looks like anything.
Recognizing a format and fully decoding its sensor data are two different milestones, and they don't land together — a vendor's compression scheme has to be reverse-engineered and implemented one at a time. Today:
| Format | Vendor | Status | Notes |
|---|---|---|---|
| DNG | Adobe (universal) | Full color | Both uncompressed and lossless-JPEG-compressed DNGs decode end to end. A DNG carries its own sensor calibration in the file, so this is the most accurate and most reliable path in. |
| CR2 | Canon | Approximate (5D3 accurate) | Sensor data decodes correctly (geometry exact), and the shot's own white balance is read from Canon's maker notes, so the picture opens correctly balanced. A CR2 carries no color calibration, so that part is approximate except on the EOS 5D Mark III, which has a bundled calibration table — see Camera Profiles below for how this gets fixed per camera. |
| CR3 | Canon | Real white balance |
Canon's current raw format, and a different kind of file from the ones above: not a
TIFF at all, but the same container a video uses, with the sensor data stored as its
own crx codec. Both variants open — the full-size RAW and the
smaller lossy C-RAW. The picture is cropped to the sensor's active area and
balanced with the shot's own white balance, read from where Canon actually keeps it;
only the camera's color calibration matrix is still estimated.
|
| NEF | Nikon | Approximate (D300 accurate) | Nikon's Huffman-compressed sensor data decodes via an in-house decoder, and the shot's own white balance is read from Nikon's maker notes. Color calibration is approximate except for the Nikon D300, which has a bundled table — see below. |
| ARW | Sony | Approximate color | Both of Sony's compressed sensor formats decode: the older fixed-rate CFA pack used by most bodies, and the newer tiled-lossless-JPEG scheme used by recent A-series cameras. Sony's own metadata isn't read yet, so both the white balance and the color calibration are estimated rather than taken from the file. |
| RW2 / RWL | Panasonic / Leica | Real white balance | Panasonic's packed sensor format decodes via an in-house decoder. Unlike the vendor formats above, an RW2 keeps its black/white levels and the shot's own white balance in ordinary file tags, so the picture opens correctly balanced rather than guessed; only the camera's color calibration matrix is still missing. |
| PEF, SR2, NRW, SRW, ERF, DCR, KDC, 3FR | Pentax, Sony, Nikon, Samsung, Epson, Kodak, Hasselblad | Not yet | Recognized, and the uncompressed and lossless-JPEG files among them decode. Where the camera used its own compression, opening one reports a clear "unsupported compression" error rather than showing a broken or blank image. |
| RAF, ORF | Fuji, Olympus | Not yet | Not opened at all yet: these are always written with the vendor's own sensor compression, so rather than advertise a format that could only ever fail, they are left unregistered until their decoders land. |
Turning the Bayer mosaic into a full-color image — filling in the two missing channels at every pixel by looking at its neighbors — is called demosaicing. It is worth knowing what this step really is: two thirds of the color was never measured, so it is reconstructed from the surrounding pixels. Every raw converter is making an informed guess here, and there is no single correct answer to compare against.
Paintapp uses AHD (Adaptive Homogeneity-Directed interpolation), which chooses a direction to interpolate along for each pixel rather than blindly averaging, so it holds fine detail and avoids the colored fringes and maze-like artifacts that show up on tight patterns like fabric, brickwork or distant foliage.
Because the detail is reconstructed rather than recorded, the same raw file can resolve slightly differently in different software — your camera's own converter, Lightroom and Paintapp may each render a hair, a roof tile or a fence line a little differently at 100% zoom. That is normal and not a fault in any of them; they are simply different readings of the same missing data. It only shows at the finest scale — overall color, tone and sharpness come from the stages below, which are shared.
Once the mosaic is demosaiced, Paintapp runs the same chain Adobe Camera Raw runs, as a sequence of ordinary nodes in the document's node graph — visible and editable like any other filter, not a hidden black box:
| Stage | What it does |
|---|---|
| Demosaic | Reconstructs full-color pixels from the sensor mosaic, working in the camera's own linear light — nothing is white-balanced or color-corrected yet. |
| White Balance | The Temperature and Tint sliders. White balance isn't a simple color tint applied afterward — it changes which part of the camera's dual-illuminant calibration gets used (see Camera Profiles), so it has to run first, before color is fully resolved. "As Shot" reproduces what the camera itself decided at capture time; "Custom" lets you pick a Kelvin temperature and tint by hand. |
| Camera Profile |
Applies a .dcp camera profile's "look" — its hue/saturation
adjustments and base tone curve — on top of the calibrated color from the previous
stage. This is where "Adobe Standard," "Camera Vivid," "Camera Landscape," and
similar profile names come from.
|
| Basic Tone | Exposure, Contrast, Highlights, Shadows, Whites, and Blacks — the familiar Camera Raw / Lightroom Basic panel. On a raw document this stage also renders the default picture before any slider moves, using the same rendering steps as Adobe's own DNG SDK, so a raw with every slider at zero already looks like a normal photo rather than something flat and dim. |
If a raw file was already edited in Lightroom or Adobe Camera Raw, those edits travel with
the file as XMP metadata (the crs: fields — white balance,
exposure, contrast, highlights, shadows, whites, blacks, and the chosen camera profile
name). Paintapp reads that metadata on open and seeds the sliders from it, so a raw you
already developed elsewhere opens showing those same edits instead of resetting to
defaults.
A .dcp ("DNG Camera Profile") is Adobe's format for describing exactly how
one camera model's sensor should be rendered into color. It is not a fixed
lookup table — it bundles several pieces that get combined at develop time:
Adobe's own .dcp files are Adobe's intellectual property, so Paintapp does
not ship or redistribute Adobe's per-camera profile library. What ships is
the parser and the Camera Profile node. You supply the profiles — most people already have
a large set on their machine, because Adobe's free DNG Converter, Lightroom and Camera Raw
each install one.
There are two ways to use them:
.dcp file on the Camera Profile
node. Good for trying a specific look on a specific shot.
.dcp files into the
app/color/dcp_profiles folder (you can drag them there in the
File Browser). From then on, opening a raw picks
the profile for that camera on its own: the one the file was last edited with if it names
one, otherwise that camera's Adobe Standard.
With no matching profile the node simply passes through, and the picture still renders from whatever calibration the raw file — or the built-in table below — provides.
Where the table above says color is "approximate", that is what's missing: unlike a DNG, a
CR2, CR3, NEF or ARW doesn't carry its camera's color calibration inside the file, because the
vendor keeps it separate — which is what a .dcp profile supplies. White balance
is a different thing and is not missing: for CR2, CR3, NEF and RW2 the shot's own white balance
is read straight from the file, so those already open correctly balanced.
A couple of bodies — the Nikon D300 and Canon EOS 5D Mark III — have their calibration built
in, so they render with accurate color and a fully working White Balance slider without any
profile at all. For every other camera, loading a matching .dcp is what turns
"approximate" into "accurate".
It's a fair question: Paintapp already has a full ICC profile system — why does raw need a whole separate format instead of just an ICC profile? Because they answer different questions.
| Camera Profile (.dcp) | ICC Profile | |
|---|---|---|
| What it describes | How to turn raw sensor readings from one specific camera model into color | How one specific device (a monitor, printer, or already-rendered image) relates to a device-independent reference space |
| Depends on lighting? | Yes — it carries two calibrations, for two different light sources, interpolated by the shot's white balance | No — one fixed transform, regardless of what the image depicts |
| What it operates on | Sensor data that has no color yet (a raw pixel is one brightness measurement, not an RGB triplet) | RGB (or CMYK/Lab) values that are already real colors |
| When it applies | Once, right after demosaicing, as part of turning sensor data into a picture | Any time afterward — for display, print simulation, conversion between color spaces, or handing the file to another application |
The short version: a raw pixel isn't a color yet, so there's nothing for an ICC profile to
describe. A .dcp camera profile does the job a camera's own processor does
when it turns sensor data into a JPEG — decide what the sensor's numbers actually mean,
accounting for the light they were captured under. Once that's done —
once Camera Profile and Basic Tone have produced an ordinary picture — the result is just
an image like any other, and Paintapp's regular ICC (or OCIO) pipeline takes over from
there for display, proofing, and export, exactly as it would for a JPEG or PSD. They're
stages in a sequence, not competing options.
Put together, opening a raw file flows like this:
| Step | Color space |
|---|---|
| Sensor mosaic → Demosaic | Camera-native linear light |
| White Balance → Camera Profile → Basic Tone | Scene-linear CIE XYZ, internally by way of linear ProPhoto — working color, not yet meant for a screen |
| Display / export | Handed to Paintapp's existing ICC / OCIO pipeline, the same one every other document uses |
The document stays tagged with a device-independent XYZ profile throughout the raw-develop chain. Nothing about the Camera Raw nodes is aware of your monitor, your proof setup, or an OCIO config — that separation is deliberate, and it's why the same color-management settings and soft-proofing tools documented on the Color Management page apply to a developed raw file exactly as they do to any other document.
The File Browser thumbnails raw files the same way it thumbnails any other image — no separate raw-specific browsing mode. If you keep your shots in a folder on disk, granting Paintapp access once (as a Local Root Folder) lets it reopen that access automatically the next time you're back at the same location, which is covered in the File Browser page along with the rest of its folder handling.
.dcp yourself. White balance is separate and is read from
the file for CR2, CR3, NEF and RW2 — only ARW still falls back to a guess there.
.dcp files are Adobe's IP and aren't shipped with Paintapp — accurate,
camera-specific "looks" require loading your own .dcp (see
Camera Profiles above).