ProRes RAW is a RAW digital cinematography format, unveiled by Apple in 2018.
This video codec intends to keep the ease of use of decade-old ProRes, while providing the flexibility of a RAW format in terms of color grading and dynamic range.
ProRes RAW is designed to be a drop-in replacement for ProRes in videographers workflows:
- Same real-time, GPU-accelerated, multi-stream editing in Final Cut Pro X (starting at version 10.4.3)
- Similar bitrates, enabling reuse of existing cards and disks
- Supported from day one by camera and recorder vendors


Left: Atomos Shogun Inferno is the first recorder that captures directly in ProRes RAW format.
Right: With Zenmuse X7 camera, HDR photography "takes off" on DJI drones.
Detection
Treasured can detect ProRes RAW footage in recovered files since version 4.4, and also in cards and in hard disks.
Treasured has a built-in preview function, and shows ProRes RAW thumbnails that help identify the content of the corrupted media..


Left: Thumbnail rendered by Treasured
Right: Ghost thumbnail rendered by first DC coefficient technique (see "bitstream analysis" below)
All flavours of ProRes RAW (standard and HQ), all resolutions and all vendors (DJI, Atomos, ...) are supported.
Failure modes
The causes of failure reported by ProRes RAW users are:
- Recorder not ready when drive is ejected (files closing was not complete)
- Device was turned off during recording (clip not finalized)
- Accidental deletion or formatting
- Drive or card filled up and stopped recording. It didn't finish wrapping and writing the QT files
- Drive or card can't keep up writing at the required bitrate
Repairability and Pricing
Due to similarities with ProRes as far as containers and bitstreams are concerned, we can leverage our experience of more than a decade repairing ProRes footage, to provide highly satisfying repairs in ProRes RAW as well.
Corrupted ProRes RAW media can usually be repaired without major problem.
The only failure mode (see list above) that is very challenging to fix is the insufficient card writing speed. This can cause some frames to be only partially written, and those frames will have to be skipped in the recovery process.
Huge ProRes RAW file (hundreds of GB) are not a problem for Treasured and our remote repair system, since only around 200 MB of data need to be sent via Internet. With a small sample, we can figure out the repair technique and send the repair program to the customer.
Aero Quartet engineers develop a Repair Kit with the following features:
- Repaired footage has same quality as originally recorded
- Repaired footage is compatible with edition and post-production workflows
ProRes RAW repairs are only available through our 4K and Cinema plans.
Bitstream Analysis
Little is known about the internals of ProRes RAW encoding. As of fall 2018, Apple hasn't published technical details, the codec remains proprietary.
- Footage is stored in .mov containers, like those used in ProRes: One track for ProRes RAW video, plus optional tracks for audio and timecode
- Codec fourccs are 'aprn' for standard quality and 'aprh' for ProRes RAW HQ
- Frame header looks very similar to ProRes, but with some differences:
0000: 00 4F 98 00 70 72 72 66 00 88 00 00 61 70 70 6C (1) (2) (3) (4) (5) (1) frame length in bytes (32 bits) (2) frame type, always 'prrf' (3) header size in bytes (16 bits) (4) version (5) vendor (here: 'appl') 0010: 10 10 08 80 08 08 08 08 00 00 EF 80 (6) (7) (8) (6) frame width (16 bits) (7) frame height(16 bits) (8) unknown 001C: 3F FD 80 00 3F EF 80 00 3F 0D 9A 80 3E B5 BA 80 002C: 3D 2A BC 00 3D F7 A0 00 3F 89 62 E0 BE 47 2A 00 003C: BD 48 F4 00 BE 98 6C 80 3F B7 C9 00 41 3B DB EC (9) (9) 12 float numbers (48 bytes) that mirror quantization table used in ProRes 004C: 00 00 00 07 unknown (can also be 00000009) 0050: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 0060: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 0070: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 0080: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 0090: 04 91 04 B0 04 8F 04 B6 04 B9 04 E1 04 E1 04 D1 (10) (10) slice length (16 bits)
Number of slices depends on the frame resolution. Slices have fixed resolution of 256 x 16 pixels. Example: 5440x2880 pixels gives 3960 slices because 5440/256 = 21.25, rounded to 22, and 2880/16 = 180. 3960 is the product of 22 x 108. Starting at 0090, for each slice, two bytes encode the slice length. Each slice is then written from top to bottom, left to right into the frame bitstream. Slice header: 1F80: 40 2D 01 27 01 2C 01 6F 3F (11) (12) (13) (14) (15) (11) Slice header (12) length of Green (13) length of Red (14) length of Blue Length of second Green can be calculated with formula: (10)-(12)-(13)-(14) - 8 (15) first DC coefficient of Green plane Using first DC coefficients of each plane and each slice, we can generate a very low resolution image. See "Ghost" thumbnail above.