Avid DNxHD

Avid DNxHD ("Digital Nonlinear Extensible High Definition") is a lossy high-definition video post-production codec developed by Avid for multi-generation compositing with reduced storage and bandwidth requirements. It is an implementation of SMPTE VC-3 standard.

Overview
DNxHD is a video codec intended to be usable as both an intermediate format suitable for use while editing and as a presentation format. DNxHD data is typically stored in an MXF container, although it can also be stored in a QuickTime container.

On February 13, 2008, Avid reported that DNxHD was approved as compliant with the SMPTE VC-3 standard.

DNxHD is intended to be an open standard, but as of March 2008, has remained effectively a proprietary Avid format. The source code for the Avid DNxHD codec is freely available from Avid for internal evaluation and review, although commercial use requires Avid licensing approval. It has been commercially licensed to a number of companies including Ikegami, FilmLight, Harris Corporation, JVC, Seachange, EVS Broadcast Equipment.

On September 14, 2014, at the Avid Connect event in Amsterdam, Netherlands, Avid announced the DNxHR codec to support resolutions greater than 1080p, such as 2K and 4K.

On December 22, 2014, Avid Technology released an update for Media Composer that added support for 4K resolution, the Rec. 2020 color space, and a bit rate of up to 3,730 Mbit/s with the DNxHR codec.

Implementations
DNxHD was first supported in Avid DS Nitris (Sept 2004), then Avid Media Composer Adrenaline with the DNxcel option (Dec 2004) and finally by Avid Symphony Nitris (Dec 2005). Xpress Pro is limited to using DNxHD 8-bit compression, which is either imported from file or captured using a Media Composer with Adrenaline hardware. Media Composer 2.5 also allows editing of fully uncompressed HD material that was either imported or captured on a Symphony Nitris or DS Nitris system. Ikegami's Editcam camera system is unique in its support for DNxHD, and records directly to DNxHD encoded video. Such material is immediately accessible by editing platforms that directly support the DNxHD codec. The Arri Alexa supports DNxHD since November 2011. Blackmagic Design HyperDeck Shuttle 2 and HyperDeck Studio support DNxHD as of 2012. AJA Video Systems has supported the DNxHD codec in its Ki Pro Mini and Ki Pro Rack recorders and players since 2012.

A standalone QuickTime codec for both Windows XP and Mac OS X is available to create and play QuickTime files containing DNxHD material.

Since September 2007, the open source FFmpeg project is providing 8-bit VC-3/DNxHD encoding and decoding features thanks to BBC Research who sponsored the project and Baptiste Coudurier who implemented it. In July 2011, FFmpeg added 10-bit encoding support. DNxHD support is included in stable version 0.5 of FFmpeg, released on March 10, 2009. This allows Linux non-linear video editors Cinelerra and Kdenlive to use DNxHD.

At the April 2012 NAB show, Brevity introduced a customized algorithm for the accelerated transport and encoding of DNxHD files.

Technical details
DNxHD is very similar to JPEG. Every frame is independent and consists of VLC-coded DCT coefficients.

The header consists of many parts and may include quantization tables and 2048 bits of user data. Each frame also has two GUIDs and timestamp. The frame header is packed into big-endian dwords. Actual frame data consists of packed macroblocks using a technique almost identical to JPEG: DC prediction and variable-length codes with run length encoding for other 63 coefficients. DC coefficient is not quantized.

The codec supports alpha channel information.

VC-3
The DNxHD codec was submitted to the SMPTE organization as the framework for the VC-3 family of standards. It was approved as SMPTE VC-3 after a two-year testing and validation process in 2008 and 2009:
 * SMPTE 2019-1-2008 VC-3 Picture Compression and Data Stream Format
 * SMPTE 2019-3-2008 VC-3 Type Data Stream Mapping Over SDTI
 * SMPTE 2019-4-2009 Mapping VC-3 Coding Units into the MXF Generic Container
 * RP (Recommended Practices) 2019-2-2009 VC-3 Decoder and Bitstream Conformance