|Introduction | Sustainability Factors | Content Categories | Format Descriptions | Contact|
|Full name||Apple ProRes 422 Codec Family|
Apple ProRes is a family of proprietary, lossy compressed, high quality video intermediate codecs primarily supported by the Final Cut Pro (FCP) suite of post-production and editing software programs. There are two main branches of Apple ProRes: the Apple ProRes 422 Codec Family (described here) and the Apple ProRes 4444 Codec Family. The Apple ProRes 4444 Codec Family is not described in depth at this time but see the Notes section for additional information.
ProRes was designed to be a high quality intermediate codec that keeps post-production workflow data at 10-bit quality, with a bandwidth low enough to be usable for the majority of FCP users.
The key character traits that define the ProRes 422 family are support for:
While ProRes is a 10-bit native codec, it can be used with either 8- or 10-bit sources and 8-bit sources (such as DVCProHD) would need to be upsampled to a 10-bit file.
The Apple ProRes codecs, both the 422 and 4444 families, support both interlaced and progressive scanned images and preserve the scanning method used in the source material. The 422 codecs are differentiated primarily by data rate limits, expected file size ranges and software version support. The 4444 codecs additionally have dynamic range limits (see Notes). Apple provides a summary of the ProRes family technical specifications as well as guidance for selecting appropriate ProRes codecs based on anticipated workflows. The Apple ProRes family spans a broad range of data rates to support a variety of workflow and application purposes. The authors of this website have selected to use 1920x1080 at 29.97 fps as a comparison target across the ProRes 422 codecs.
|Production phase||Production (initial state) and post production (middle state).|
|Relationship to other formats|
|Used by||QTV_AppleProRes422, QuickTime Video, Apple ProRes 422 Codec Family|
|Has subtype||Apple_ProRes_422_HQ, Apple ProRes 422 High Quality|
|Has subtype||Apple_ProRes_422, Apple ProRes 422|
|Has subtype||Apple_ProRes_422_LT, Apple ProRes 422 LT|
|Has subtype||Apple_ProRes_422_Proxy, Apple ProRes 422 Proxy|
|LC experience or existing holdings||Apple ProRes 422 Codec Family files appear in Library of Congress collections holdings. See Apple_ProRes_422 and Apple_ProRes_HQ.|
|Disclosure||Partially documented. Proprietary format developed by Apple, Inc.|
|Documentation||Some technical information is available through third parties including Multimedia Wiki. Apple also provides high level information through its frequently updated ProRes white paper.|
The ProRes family is widely adopted in professional moving image production. There is extensive use of the 422 family in the creation of documentaries and other programs for broadcast television. There is some use of the ProRes 4444 family in the production of advertising and in content destined for theatrical distribution. The popularity of Apple's Final Cut software suite has encouraged uptake of the codecs. Apple ProRes 422 and Apple ProRes 422 HQ were first supported in Final Cut 2 (2001); Apple ProRes 422 Proxy, Apple ProRes 422 LT and Apple ProRes 4444 were added with Final Cut Pro 7 (2009); Apple ProRes 4444 XQ was added to Final Cut Pro X (2012). Apple has licensed Apple ProRes for use in specific products and workflows. Although Apple complains that unauthorized implementations provided by other third-party software and hardware products including FFmpeg "might result in decoding errors, performance degradation, incompatibility, and instability," this support is a further indicator of adoption.
In November 2015, the New York Times listed ProRes422 as the preferred format for high-resolution assets from video producers, editors, and partners which is later transcoded to a variety of different outputs for specific services including a "single HLS output with six resolutions and bitrates to support adaptive streaming, four different H.264/MP4 outputs, and one VP8/WebM for ... users on the Mozilla Firefox browser running on Microsoft Windows XP."
|Licensing and patents||
Licenses are required to incorporate support for the ProRes family in commercial hardware and software; no licenses are required for use by content creators.
|Transparency||Proprietary binary format, requires tools to write and read.|
|Self-documentation||Technical metadata is in the frame container atoms and frame headers which declare the ProRes type, frame size and color information.|
|Technical protection considerations||None. Comments welcome.|
|Clarity (high image resolution)||
Potentially excellent depending on the specific codec.
|Functionality beyond normal rendering||
The performance of Apple ProRes codecs scales in multiprocessor environments so that the decoding time per frame goes down as the number of processors increases. When the system spends less time decoding each frame, it has time for more real-time effects processing.
In addition, its scalar quantization allows for the possibility to decode a video at different partial resolutions (½ or ¼ etc size of the full frame size) which lowers the data throughput while maintaining high image quality. This functionality allows the user advantages in playback of additional tracks of video and higher quality previews.
|Filename extension||See note.||The Apple ProRes 422 Codecs are usually contained within the QuickTime "mov" wrapper.|
Undocumented ProRes frame type ID in frame container atom
||See http://www.nationalarchives.gov.uk/PRONOM/fmt/797. However, fmt/797 the entry for Apple ProRes includes signature values for QuickTime, the usual wrapper for the Apple ProRes Family, but these signature values apply to all QuickTime files, not just those containing Apple ProRes 422 encodings. Moreover, this entry does not distinguish between ProRes 422 and ProRes 444|
|Wikidata Title ID||Q1136889
||See https://www.wikidata.org/wiki/Q1136889. This entry does not distinguish between ProRes 422 and ProRes 444|
The ProRes families uses discrete cosine transform-based compression (similar to that used in MPEG-2 and JPEG DCT Compression Encoding, Extensions). The scalar quantization allows for full frame playback previews from ½ or ¼ size frame data, lowering the data throughput while maintaining high image quality. This functionality allows the user advantages in playback of additional tracks of video and higher quality previews.
Gary Adcock explains the benefits of ProRes utilizing variable bit rate in this way: "ProRes, being a variable bit rate (VBR) codec, allows the more complex parts of the video to be encoded at a higher bit depth for more detail, while the less complex areas are encoded at a lower bit depth, thereby allowing for overall smaller file sizes [than uncompressed video]. ProRes is approximately a 5.5:1 compression ratio at its maximum and slightly more than 3:1 at its minimum compression level for SD content. This means that despite the quality there is still a fair amount of compression being done on each file."
Apple's ProRes White Paper uses peak signal to noise ratio (PSNR) to indicate image quality, stating that PSNR measures "how closely a compressed image (after being decompressed) matches the original image handed to the encoder. The higher the PSNR value, the more closely the encoded image matches the original." Higher PSNR values also indicates more headroom in the file so that image sequences can be decoded and re-encoded over multiple generations to good effect. In the June 2014 version of the White Paper, a graph on page 13 shows higher PSNR values for a scene encoded as ProRes 422 HQ as compared to the same scene encoded as Avid's DNxHD and Panasonic's D5. Another graph on the same page compares four ProRes 422 subtypes, with this comment, "PSNR for Apple ProRes 422 HQ is 15–20 dB higher than that for Apple ProRes 422 Proxy, but the Apple ProRes 422 HQ stream has nearly five times the data rate of the Apple ProRes 422 Proxy stream. The benefit of higher fidelity comes at the cost of larger file sizes."
The Multimedia Wiki, describes the atom-based structure of ProRes encoded data, a feature that makes them a good fit for the QuickTime file wrapper. The first level is the frame container atom followed by the frame header. The picture data comprises a picture header, which is present for every picture (field), which defines the width and height factors of a slice to inform the decoder how the coded picture is subdivided. The slice index table consists of 16-bit entries - one for each slice - gives the length of the data for each slice, permitting independent processing of the slices in means of multi-threading. Slices data array contains actual encoded macroblock data.
The Apple ProRes 4444 Codec Family, which includes Apple ProRes 4444 and Apple ProRes 4444 HQ, is seeing some use in the creation of productions destined for theaters and high end advertising. The fourth "4" in the name indicates this format's support for alpha (transparency) data, in contrast to ProRes 422. Other features include picture sizes ranging as high as 5K and 4:4:4 chroma subsampling up to 12-bits per sample. Alpha channel sampling can be as high as 16-bits.